--- cernlib-2006.dfsg.2.orig/debian/compat +++ cernlib-2006.dfsg.2/debian/compat @@ -0,0 +1 @@ +5 --- cernlib-2006.dfsg.2.orig/debian/NEWS +++ cernlib-2006.dfsg.2/debian/NEWS @@ -0,0 +1,111 @@ +cernlib (2006.dfsg.2-7) experimental; urgency=low + + The default FORTRAN compiler on Debian is now gfortran, not g77. In this + Debian release of cernlib, CERN libraries have been built with the new + gfortran compiler. + + For the moment, for backwards compatibility it is possible to install + gfortran-based and g77-based CERN library runtime packages in parallel. + The final versions of the g77-based runtime library packages may be + obtained (if you do not already have them) by adding, e.g., the following + entries to /etc/apt/sources.list: + + deb http://snapshot.debian.net/archive/2008/01/22/debian unstable main + deb-src http://snapshot.debian.net/archive/2008/01/22/debian unstable main + + However, since g77-based packages will no longer be supported by Debian, + all users will eventually want to recompile their locally-built CERNLIB + using programs with gfortran. + + -- Kevin B. McCarty Wed, 23 Jan 2008 16:52:31 -0800 + +cernlib (2005.05.09-1) unstable; urgency=low + + Please note that many of the dynamic libraries in this release of Cernlib + have had a soname version increase. This was necessary because they are + now linked against the new versions of libblas and liblapack. As a result, + the corresponding package names have changed. I have also taken this + opportunity to make them more consistent with the library names, e.g., + libpdflib804.so.2.2005 is found in the libpdflib804-2 package. If you + have installed one of the cernlib-core, cernlib-core-dev, or + cernlib-montecarlo metapackages, the new packages will be installed + automatically with an apt-get or aptitude dist-upgrade. + + In addition, I have separated out the portion of the Paw library libpawlib + that depends upon Lesstif into its own package, now named + libpawlib2-lesstif (libpawlib2-lesstif-dev for the static library). + The rest of Pawlib is in libpawlib2 (libpawlib2-dev). As a result, + programs like pawX11 and mn_fit that use Pawlib but not Lesstif will no + longer have a Lesstif dependency. If you are a user of these programs, + this means less wasted hard disk space. For consistency, the library + libkuipX11 containing the Lesstif-dependent portions of packlib has been + renamed to libpacklib-lesstif (in the libpacklib1-lesstif package). + + If you are a developer, using the "cernlib" script to calculate library + dependencies will still do the right thing. Just be sure to use the "-G + Motif" argument if and only if you want to link against Lesstif: + `cernlib -G Motif pawlib`. If you don't use the cernlib script, and + explicitly link with "-lpawlib", everything will work unless your code + needs the Lesstif interface to Paw. + + -- Kevin B. McCarty Wed, 8 Jun 2005 10:49:06 -0400 + +cernlib (2004.11.04-3) unstable; urgency=high + + This release of Cernlib adds the kuesvr "edit server" binary, in the + libpacklib1 package. For security reasons, it was necessary to modify + the kuesvr command-line flags in a way incompatible with the version + distributed by CERN. Therefore it is not possible to use the kuesvr + in Debian with applications distributed by CERN or statically linked + against CERN versions or older Debian versions of libpacklib1; nor can + one use CERN's kuesvr with current Debian packages of Cernlib programs. + See "man 1 kuesvr" for more information. + + Also new in this release is an updated version of the cernlib.m4 + Autoconf macros. The new version is slightly backwards-incompatible; + the configure argument --with-cernlib-location has been replaced + by --with-cernlib. + + -- Kevin B. McCarty Thu, 10 Mar 2005 10:58:43 +0100 + +cernlib (2003.09.03-3) unstable; urgency=low + + In this release, all packages containing more than one library have been + split apart. Thus (e.g.) libcern1 has been replaced by libkernlib1, + libpacklib1, and libmathlib1, and likewise for libmontecarlo1 and + libgraflib1. The original library packages libcern1{,-dev} and + libmontecarlo1{,-dev} still exist as dummy packages to make upgrades + simple. (libgraflib1, libgraflib1-dev are not dummy packages.) The dummy + packages may be safely removed after upgrading. The README.Debian in + libmontecarlo1{,-dev} has been moved to a new montecarlo-base package + upon which all Monte Carlo packages depend. + + The montecarlo-data and montecarlo-doc packages are no more; the data + and documentation files in them have moved into the appropriate library + and development packages, respectively, since they are not very large. + (E.g. cojets.dat is now in libcojets1 and pdfdoc.txt is now in + libpdflib804-dev.) Currently montecarlo-data is a dummy package depending + upon libcojets1, libeurodec1, and libisajet758; montecarlo-doc is a dummy + package depending upon libcojets1-dev, libeurodec1-dev, libherwig59-dev, + libisajet758-dev, and libpdflib804-dev. Again, the dummy packages may + be safely removed after upgrading. + + These dummy packages are not generated on m68k, since this is the first + release for that arch, and therefore it has no need to upgrade. + + -- Kevin B. McCarty Tue, 30 Dec 2003 14:43:34 -0500 + +cernlib (2003.09.03-2) unstable; urgency=low + + The problems with using the COMIS interpreter in programs linked + dynamically to pawlib have been solved. If you are using pawlib + for development, please read /usr/share/doc/libpaw1-dev/README.Debian. + + For this reason, the paw-static and paw++-static packages are now + deprecated. They will be removed in the next few releases and replaced + by dummy packages (e.g. paw++-static will Depend upon paw++). If you + use Paw or Paw++, please check soon to make sure that the dynamically + linked packages behave as well as the statically linked ones. + + -- Kevin B. McCarty Sat, 1 Nov 2003 20:40:09 -0500 + --- cernlib-2006.dfsg.2.orig/debian/deadpool.txt +++ cernlib-2006.dfsg.2/debian/deadpool.txt @@ -0,0 +1,24 @@ +# This file lists all the files that were removed from the CERNLIB source +# for copyright reasons. Given is the file or directory to delete +# relative to $CERN_ROOT/src/. + +# --Kevin McCarty, 23 Nov 2005 + +# Authors of Pythia/Jetset did NOT give permission to release +# their code under GPL. CERN should have checked this more carefully!!! +car/jetset74.car + +# The same applies to GEANT-FLUKA; see for instance the comments at +# the web site http://www.fluka.org/Faq.html +car/geanf.car +car/geanf321.car + +# Other problematic files (mostly on VMS or obsolete archs) +graflib/higz/igold/golini.F +packlib/cspack/sysreq/pwd_vms.h +packlib/cspack/sysreq/sgtty.h +packlib/cspack/vmsc/ +packlib/fatmen/scripts/unix/ctab_root.dat +packlib/kernlib/kernbit/z037/astdoc.F +packlib/kernlib/kernbit/z037/fiopat.s + --- cernlib-2006.dfsg.2.orig/debian/changelog.Debian.old +++ cernlib-2006.dfsg.2/debian/changelog.Debian.old @@ -0,0 +1,1267 @@ +cernlib (2005.05.09-4) unstable; urgency=low + + * debian/control.d/0base.control, debian/rules: Build-Depend on gcc-3.4 and + drop a symlink gcc -> /usr/bin/gcc-3.4 into debian/add-ons/bin in order to + ensure we don't build with a compiler having bug #325050. This works + around bug #324902, a segfault when using ntuples in Paw. Not actually + closing #324902 until it's fixed in GCC 4. + + * New patch 113: Re-order lines in PostScript output to work around + CUPS issue. Thanks to Frank Dohrmann + for the work-around and testing. (closes: #329207) + + * New patch 211 by Harald Vogt (found at + http://www-zeuthen.desy.de/linear_collider/cernlib_2005_x86_64.patch ) + to improve behavior of Paw and Paw++ on 64-bit architectures. + Patch is, however, disabled until I can work out what to do about the + -fno-f2c compiler flag and fix the conflict with patch 304. + + * Fine-tuning of dependencies: + - debian/control.d/{geant321-doc,kuipc}.control: add Depends on + cernlib-base. Goal is for all Cernlib-related packages to depend at + least indirectly on cernlib-base, so "apt-get remove cernlib-base" will + remove all Cernlib packages. + - debian/control.d/libpawlib2-dev.control: add Suggests on + libpawlib2-lesstif-dev, analogous to libpacklib1-dev suggesting + libpacklib1-lesstif-dev. + - debian/control.d/{pawserv.control,fatmen.disabled}: add Conflicts + against harden-servers since these servers are most insecure. + (Cf. bug #325008 which will make the Conflicts mutual.) + - debian/control.d/pawserv.control: add Depends on netkit-inetd | xinetd, + but note in the long description that people choosing to run this + package under xinetd will have to set up the configuration themselves. + + -- Kevin B. McCarty Wed, 21 Sep 2005 11:20:38 -0400 + +cernlib (2005.05.09-3) unstable; urgency=low + + * Forgot to delete patch 316 (preventing the compilation of libisajet on + m68k in the Imakefile). Why didn't anyone file an FTBFS bug over this? + Fixed now. + + * Add "| debconf-2.0" to Depends of pawserv, pursuant to + http://lists.debian.org/debian-devel/2005/08/msg00136.html . + + -- Kevin B. McCarty Thu, 4 Aug 2005 14:33:37 +0000 + +cernlib (2005.05.09-2) unstable; urgency=low + + * patch 112: Comment out functions in gen.h that do not exist in mathlib. + Otherwise third-party code fails to link via cfortran (closes: #315956). + (This has been cloned to bug #315974 in sarge.) Thanks to Tim Gershon + for the bug report. + + * debian/control.d: Add versioned dependency on cernlib-base + (>= 2005.05.09-1) to libmathlib2-dev and libpacklib1-lesstif-dev + since they need a recent version of the cernlib script. + Explicitly conflict against blas2-dev, lapack2-dev in the cernlib-base + package to solve some problems with "apt-get dist-upgrade" from Sarge. + + * debian/changelog: Correct previous changelog entry to also credit + Patrice Dumas re: patch 318. + + * debian/rules, debian/control.d: Compile isajet on m68k since the + compiler bug preventing it (#225621) is fixed in g77 3.4, now the + default g77 version. (Neither upstream nor I want to deal with + gfortran yet...) + + * debian/add-ons/manpages/cernlib.1: Change the help output to match + the new actual output of the cernlib script. + + * Install kuesvr into the directory /usr/lib/libpacklib1 in conformance + with Policy 8.1. (It doesn't make sense to call it directly, only from + within the library, so kuesvr is a "run-time support program".) + - patch 605, debian/rules: Patch source code to deal with this. + - debian/debhelper/{cernlib-base,libpacklib1}.README, + debian/add-ons/kuesvr.1: Note the new location in documentation. + - debian/control.d/libpacklib1.control: Conflict against older paw-static + and paw++-static packages which expect to have kuesvr in the $PATH. + - debian/control.d/0base.control: Bump Standards-Version to 3.6.2. + + * debian/README.source, debian/patches/README: Expand upon build-time + documentation. + + * debian/lintian/*: Update location of menu files (lib->share) in overrides. + + * debian/debhelper/*.menu: Give full paths to commands in menu files + (except for sh; if /bin isn't in $PATH someone has a problem). + + -- Kevin B. McCarty Thu, 21 Jul 2005 14:26:15 +0000 + +cernlib (2005.05.09-1) unstable; urgency=low + + * New upstream release. + - Incorporates the security fixes from Debian version 2004.11.04-3, + making a number of Debian-specific patches obsolete. + - Fixes build failures with gcc 4 (closes: #303098). Thanks also to + Andreas Jochens and Patrice Dumas + for some additional fixes now in new patch 318. + - Note new upstream source directory in debian/copyright. + + * Post-Sarge spring clean-up of debian directory structure: + - Move all debhelper-related snippets into a debian/debhelper directory. + Symlink to them at build time and delete the symlinks at clean time. + - Likewise, add a debian/lintian directory and store overrides there. + (No need for symlinks; they are copied into packages by debian/rules.) + - Move debian/generic/patches to debian/patches in preparation for + dpatchization. + - Rename debian/generic to debian/add-ons to better describe its contents. + - Move debian/local/control to debian/control.d, remove-deadpool to + add-ons/bin, and the other files in debian/local directly under the + debian directory. + - Rename rules-help.txt to README.source in attempt to comply with the + Policy proposal in bug #250202. Add "patched" target to debian/rules + as a synonym for "patch". + - Edit all files referring to these paths appropriately. + + * Post-Sarge spring clean-up of dependencies in debian/control.d/*: + - Remove lesstif-dev from Build-Depends and Depends; we only want to + use lesstif2-dev and we no longer are concerned with woody + backport-ability. + - Remove the xlibs-dev alternative from Build-Depends for same reasons. + - Remove all references to version numbers 2003.09.03-2 and earlier + (dating from > 1.5 years before the release of Sarge): + . Versioned dependencies on packages >= 2003.09.03-2 become + unversioned dependencies; + . Conflicts/Replaces against old packages libcern1, etc. are removed. + + * Post-Sarge removal of woody backward compatibility hack for debconf i18n + from debian/rules: + - Move pawserv.templates.master to pawserv.templates. + - debian/po/POTFILES.in: list debian/pawserv.templates (not .master). + - debian/control.d/0base.control: Build-Depend on debhelper (>= 4.1.16). + - debian/control.d/pawserv.control: Depend on debconf (>= 1.2.0). + + * debian/rules, debian/debhelper/pawserv.postinst: Change permissions + of /var/log/pawserv directory in postinst (with dpkg-statoverride) instead + of debian/rules, to fix Lintian warning and better guarantee security. + Also, if the local admin for some reason has overridden our set permissions + (0700) with dpkg-statoverride, this way his/her changes will be preserved. + Remove the stat-override in pawserv.postrm. + + * Convert patch system to dpatch, re-applying all extant patches (that are + still relevant) from scratch. Be warned, some of the dpatch + files are shell scripts (a little-used dpatch feature) instead of patches! + See debian/patches/README in the source package for more information. + - Add dpatch (>= 2.0.9) to Build-Depends. + - Patch files are now much more fine-grained. + - Edit debian/rules to use dpatch targets. + - Implement hackery in add-ons/Makefile so build still works on + non-Debian systems. + - patch 308: allow build process to search for cfortran.h at + instead of . As a result, add + (>= 4.4-5) to cfortran Build-Dependency. Also edit add-ons/Makefile + to compensate. + - patch 602 (part of old patch 041): add #ifdef CERNLIB_DEBIAN protection + around change to use x-terminal-emulator instead of xterm. + + * Some libraries are bumped from soname version 1 to soname version 2 + because they have a direct or indirect dependency upon libblas and + liblapack. We are moving from a dependency on lib{blas,lapack}.so.2 to + lib{blas,lapack}.so.3 (closes: #280782). The affected libraries are + cojets, geant321, herwig59, isajet758, mathlib, pawlib, pdflib804, phtools. + - Rename debhelper snippets and fix contents where needed. (Note that + lib*.install files are edited to s/2004/2005/ even for libraries not + changing sonames.) + - Fix Build-Depends in debian/control.d/0base.control. + - Clean up dependencies in debian/control.d/*. In most cases the Depends + on blas and lapack which worked around bug #276145 are no longer + needed. + - Make cernlib-base Conflict against all the old -dev packages. + - Bump sonames in build process (patch 806). + - Move isajet, eurodec, and cojets data files to a different location + so they don't conflict with the files in the old soname packages. + . Edit patch 301 so they are searched for in the correct place. + - Fix debian/lib*.install and debian/local/control/lib*.control files. + - Fix cernlib script to link against correct sonames. + - Delete this item from TODOs. + - Comment on soname change in debian/NEWS. + + * Separate out libpaw functionality with Lesstif dependencies into another + library and package, libpawlib-lesstif.so.2 in libpawlib2-lesstif. + Rename libkuipX11 to libpacklib-lesstif for consistency, and put it in a + libpacklib1-lesstif package. Move kuwhag.c from libpacklib-lesstif into + libgrafX11, as it doesn't require Lesstif. This reduces the library + installation footprint for programs like pawX11 and mn_fit that don't + need Lesstif. + - Bump shlibs for libgrafX11 since it now has a new function. + - Edit control files, debhelper files, and cernlib script accordingly. + - Delete this item from TODOs. + - Comment on library split in debian/NEWS. + + * Debconf translations + - Czech: Martin Šín (closes: #304879) + - Brazilian Portuguese: André Luís Lopes + (closes: #302476, #302488, #302495) + - Vietnamese: Clytie Siddall (closes: #313327) + + -- Kevin B. McCarty Tue, 14 Jun 2005 14:28:09 -0400 + +cernlib (2004.11.04-3) unstable; urgency=high + + * Security patches to fix potentially dangerous uses of /tmp. + [Patches 027 and 034 also fix some such problems, but did not need to + be updated for this release; I mention them here for completeness.] + - patch 004: improve gxint script to create predictable filename "GEANT$$" + in $HOME, not /tmp + - patch 048: have various daemons log to /var/log, not /tmp + - patch 049: fix kuesvr not to create predictable filename in /tmp + - patch 050: have COMIS create predictably named files in a safe + subdirectory of /tmp created with mkdtemp() + - patch 051: miscellaneous other /tmp-related fixes that don't affect + Debian directly; mainly in build infrastructure + Some difficult-to-fix problems remain, but they do not affect the + build process, programs, or libraries in Debian. + + * debian/rules: Bump libpaw1 shlibs dependency to ">> 2004.11.04-2" since + patch 050 adds a new public function "cstmpd_" to the library. + + * debian/rules, debian/libpacklib1.{install,dirs}, debian/generic/Makefile: + Install kuesvr into the libpacklib1 package now that it isn't a + security hazard. + - debian/generic/manpages/kuesvr.1, debian/NEWS: Add kuesvr man page. + Note the API incompatibility in the kuesvr command-line flags + resulting from patch 049. + - debian/local/control/libpacklib1.control: As a result of this + incompatibility, have libpacklib1 Conflict against older versions of + paw{,++}-static that expect the original kuesvr API. (Older versions + of paw and paw++ are dynamically linked to libpacklib1, so they will + have no trouble.) + - patch 041: When HOST_EDITOR is "vi &", execute the editor with + "x-terminal-emulator -e" for Debian instead of "xterm -e". + - debian/local/control/libpacklib1.control: Therefore, Suggests + "xterm | x-terminal-emulator". + + * debian/generic/bin/cernlib: + - Test for libblas-2.so and liblapack-2.so before libblas2.so and + liblapack2.so, following the recent renaming of + /etc/alternatives/lib{blas,lapack}2.so to lib{blas,lapack}-2.so in + several packages. Try plain libblas.so and liblapack.so last, + to avoid mistakenly linking against libblas.so.3, etc. + - Don't eat unknown arguments past the end of cernlib-specific flags; + instead, output them directly before all other output (if they start + with a hyphen "-") or inline as -l$argument (otherwise). Mention + this new behavior in the manpage, debian/generic/manpages/cernlib.1. + + * debian/local/control/0base.control: Remove atlas2-dev from Build- + Conflicts and add it to Build-Depends (as an alternative to each + of blas-dev, lapack-dev). Since the libblas.so.2 and liblapack.so.2 + libraries in atlas2-*-dev packages are supposedly ABI-compatible with + those in blas and lapack packages, this should be perfectly OK. + - debian/generic/Makefile: don't link pawX11.static with -llapack + directly; use the "cernlib" script to detect the right lapack + library automatically. + + * patch 048, debian/rules, debian/pawserv.{cron.hourly,logrotate,postrm}, + debian/local/control/pawserv.control: + Fix pawserv/zserv to write its logs to a sane place (/var/log/pawserv) + with permissions 0700, add a cron.hourly script to concatenate them + into /var/log/pawserv.log, include a logrotate.d config fragment, and + have the pawserv package Suggest logrotate and Recommend cron. + + * debian/generic/misc/cernlib.m4, debian/NEWS: New update of cernlib.m4 + Autoconf macros from Patrice Dumas . This version is + slightly backwards-incompatible; for details, see debian/NEWS (in source) + or /usr/share/doc/cernlib-base/NEWS.Debian (in installed packages). + + * debian/local/control/cernlib-montecarlo.control: No longer depend on + "libisajet758-dev | m68k-linux-gnu" since type-handling has stopped + providing architecture virtual packages (cf. bug #274747). Instead, + Recommend libisajet758-dev so as not to be uninstallable on m68k. + + * debian/generic/manpages/*, debian/*.{TODO,README.debian}: Update and + touch up various documents slightly, including a note in gxint.1 about + the change due to the update of patch 004. + + * debian/*.overrides: Remove Lintian overrides for the warning + description-synopsis-starts-with-a-capital-letter; it has been removed + from Lintian due to too many false positives. + + * debian/generic/README: Remove obsolete claim that compressed GIF + support is disabled. + + * debian/paw*.README.debian: Mention that making the suggested change to + XF86Config-4 will cause Debconf not to update that file, and refer + to the relevant X Strike Force FAQ entry. + + * debian/generic/Makefile, debian/generic/patches/ifort.patch, + debian/generic/patches/additions/config+linux.cf, + debian/local/rules-help.txt: Add the "ifort" option to $DEB_BUILD_OPTIONS + to compile with ifort/icc instead of g77/gcc. Thanks to Marco Cammarata + for trying this out. + + -- Kevin B. McCarty Thu, 10 Mar 2005 16:05:44 +0100 + +cernlib (2004.11.04-2) unstable; urgency=low + + * patch 015: Compile src/mathlib/gen/d/radmul.F at -O0 to work around a + g77 optimization bug (closes: #290394). Many thanks to + Eduardo A. Menendez Proupin + for tracking this down. + + * Tidying up for Sarge: + - debian/generic/patches/additions/config+linux.cf: Comment out extra + "ServerExtraDefines" definition. + - debian/paw{,++}{,-static}.{overrides,dirs}, debian/rules: Add Lintian + overrides for Lintian false alarms on these binary packages. + - debian/local/control/*: Fix a few package descriptions that get a + Lintian warning for description-synopsis-starts-with-a-capital-letter. + Most of these are spurious but it would be too bothersome to add + overrides for all of them. + - debian/generic/manpages/cernlib.1: Explain why cernlib script links + statically by default (viz., to preserve upstream behavior). + - debian/*.doc-base: Change doc-base sections of documents from + Apps/Programming to Apps/Science. + - debian/copyright: Fix the copyright file so that the "above copyright + notice" referred to in many of the exception licenses is included in + the correct place. Quote CERN's licensing of Cernlib under the GPL + verbatim. Remark upon where to find the original COPYRIGHT file for + the Addison-Wesley copyrighted source code. + - debian/copyright, debian/libpdflib804-dev.README.debian: Add a comment, + just in case anyone gets worried, that the apparently non-free license + of the file src/mclibs/pdf/doc/pdfdoc.dat (a.k.a. /usr/share/doc/lib- + pdflib804-dev/pdfdoc.txt.gz) has been superseded by the GPL. + - debian/*.README.debian: Add disclaimers that URLs for unofficial + non-free Monte Carlo Debian packages (Ariadne, Pythia, etc.) may not + last forever. + + -- Kevin B. McCarty Fri, 14 Jan 2005 00:08:44 -0500 + +cernlib (2004.11.04-1) unstable; urgency=high + + * New upstream version: + - Upstream claims 64-bit is mostly fixed (closes: #255970) ... + - ... except for COMIS; note this in various Paw-related README.Debian + files and package control texts. + - debian/local/control/*: change Architecture back to "any". + - debian/generic/patches/additions/graflib+higz+higzcc+gifencode.c: + delete, since the new orig.tar.gz includes gifencode.c. + - debian/lib*.install: $CERN_LEVEL is now 2004, so the shared libs become + lib*.so.1.2004 -- change the install files to work. + - debian/copyright: s/2003_source/2004_source/ in the download URL + + * Maintain my versions of {linux,Imake}.cf independently of upstream's: + - debian/generic/patches/additions/config+{linux,Imake}.cf: new files. + Add the magic -DCERNLIB_QMLXIA64 flag to linux.cf for 64-bit arches. + - debian/generic/Makefile: modify slightly to allow files in the + .../patches/additions directory to overwrite files from upstream. + - Debian patches 36 and 37: delete, as they are no longer needed. + + * Some fixes to deal with issues in the supposed interchangeability of + atlas2-base-dev with lapack-dev and blas-dev: + - debian/generic/bin/cernlib: If libblas.so or liblapack.so is not found, + fall back to libblas2.so or liblapack2.so respectively. + - debian/local/control/{cernlib-*,libmathlib1-dev}.control: Explicitly + prefer installation of blas{,-dev} and lapack{,-dev} over + atlas2-base{,-dev} in metapackages. Hopefully, this closes: #276145. + + * debian/local/control/{paw-common,libpaw1}.control: Add the package + "libc6-dev | libc-dev" to the Recommends of libpaw1 and paw-common. + Without libc-dev, PAW and Paw++ can only interpret FORTRAN code, not + compile it, as ld complains that crti.o is missing. + + * debian/local/control/{pawserv,zftp}.control: Improve descriptions of + pawserv, zftp packages and note their general uselessness more explicitly. + + * debian/{cernlib-base.TODO,*.README.debian}: Minor edits. + + * debian/rules: Add an orig.tar.gz target for my convenience. + + * debian/rules: Change generated shlibs to depend upon library versions + >= 2004.01.20-6, the last time any backwards incompatibilities appeared. + + * patch 46: Shut up makedepend (cf. xutils bugs #257142, #267205). + + -- Kevin B. McCarty Tue, 30 Nov 2004 12:33:16 -0500 + +cernlib (2004.01.20-8) unstable; urgency=low + + * debian/generic/bin/paw-demos: Fix to work correctly with the current + filecase default setting of Paw (closes: #274056). + - On a related note, document that this default was changed for Debian, + and how to get the original behavior back, in the various + paw*.README.Debian files. + + * Fix Lintian errors: + - Create 32x32 pixel versions of the Paw and KXterm xpms and use + these in the Debian menu entries. + - Force most metapackages to depend upon the exact same version of + cernlib-base, since their /usr/share/doc dirs are symlinked to that + of cernlib-base. + - Force cernlib-montecarlo metapackage to depend upon the exact same + version of montecarlo-base, for the same reason. Make the + cernlib-montecarlo package Architecture: all so that this will not + cause problems with binary NMUs. Allow for the fact that isajet is + not currently compilable on m68k by depending upon + libisajet758-dev | m68k-linux-gnu ("m68k-linux-gnu" is Provided on + m68k GNU/Linux platforms by the type-handling package). + + * debian/rules: Simplify the overly obfuscated code for dh_shlibdeps + by using "shlib" as the argument for the -l flag. + + * debian/control: Remove obsolete dummy packages libcern1, libcern1-dev, + libmontecarlo1, libmontecarlo1-dev, montecarlo-data, montecarlo-doc. + There is no need for these to enter stable (having never been there + originally), and they have been dummy packages long enough that their + removal should not cause upgrade problems for people running sid or sarge. + + * debian/control: Finesse dependencies of Arch: all packages such that + all Recommends are either converted to Depends or removed. + + -- Kevin B. McCarty Thu, 7 Oct 2004 12:00:49 -0400 + +cernlib (2004.01.20-7) unstable; urgency=medium + + * Urgency still medium in order to get this into testing; patch 47 + fixes major bugs in the Paw++ GUI. + + * Take some action to make Cernlib build logs smaller; the log files + were so large as to require manual handling by buildd admins: + - patch 37: stop Imake from complaining that HasGcc{,2} already defined. + - patch 46: stop compiler flags and full paths to source code from being + printed except on error. + + * patch 47: Work around #270862 (a bug in Lesstif) so that Paw++ menus + function correctly. (closes: #270838, #270861) + + -- Kevin B. McCarty Wed, 22 Sep 2004 22:46:20 -0400 + +cernlib (2004.01.20-6) unstable; urgency=medium + + * patch 45: Compile isasrt.F into libisajet758 so that comphep can be + built with Debian's isajet. Thanks to David Kimdon + for the patch. (closes: #260469) + + * Add a set of Autoconf macros to detect Cernlib libraries in the + cernlib-base package, installed to /usr/share/aclocal/cernlib.m4. + Many thanks to contributor Patrice Dumas . + - debian/generic/misc/cernlib.m4: The macro file. + - debian/generic/Makefile: Have it installed automatically by the Makefile. + - debian/cernlib-base.{dirs,install}: Install it into cernlib-base package. + - debian/local/control/cernlib-base.control: Note in package description. + + * Be more specific in the README.Debian's for Geant packages about which + functions are missing or will not work due to the excision of FLUKA code. + Add dummy symbols for some missing functions in debian/generic/patches/ + additions/geant321+gkine+dummy.c so that it is possible to link against + the Geant shared library. Hence urgency=medium. Thanks to Matt Bellis + for reporting the problem. + + * patch 07: Add erdecks, erpremc, matx55 directories to the list of code to + compile, so that ERTRAK is included in the Geant library. + + * debian/generic/scripts/makedeplist: Finetune this so it doesn't list + any dependencies on libc, libm or libg2c. + + * Debconf translations + - Japanese: Hideki Yamane (closes: #259794) + + -- Kevin B. McCarty Sat, 14 Aug 2004 10:10:46 -0400 + +cernlib (2004.01.20-5) unstable; urgency=low + + * Last known Unisys LZW patent is expired, so we can make compressed + GIFs again. + - debian/generic/patches/additions/graflib+higz+higzcc+gifencode.c: Add + back the original version of this file from upstream sources. + - debian/copyright: Delete comment about this file's removal. + - debian/cernlib-base.TODO: Remove this item from todo list. + - debian/local/deadpool.txt: Don't delete this file from upstream code + when (if ever) it becomes time to prepare a new orig.tar.gz. + + * debian/control: Change "Arch: any" to explicitly list only 32-bit arches. + I don't know what kind of crack the authors of Cernlib were smoking, + but it looks difficult if not impossible to patch it to work on 64-bit + without rewriting the whole thing. + + * Remove Imake.cf and linux.cf files left in root directory of the source + package by mistake. + + * patch 44: Undefine "strdup" before redefining it, in the case when + it is a macro, to prevent annoying compiler warnings. + + -- Kevin B. McCarty Mon, 12 Jul 2004 08:23:29 -0400 + +cernlib (2004.01.20-4) unstable; urgency=low + + * patch 15: Every release of g77 breaks something new. Avoid + optimization when compiling src/pdf/spdf/structm.F to prevent ICE + on ARM. + + * patches 36, 37: Add support for x86_64 in src/config/{Imake,linux}.cf + by stealing from the analogous Debian-patched files in xfree86 (version + 4.3.0.dfsg.1-4). Untested -- I hope this works. + + * Debconf translations + - German: Erik Schanze (closes: #250781) + + -- Kevin B. McCarty Sat, 12 Jun 2004 11:11:58 -0400 + +cernlib (2004.01.20-3) unstable; urgency=low + + * patch 43: Comment out gen.h prototype of NEWPTQ since it has more + arguments than cfortran.h can accept. (closes: #249423) + + * debian/generic/bin/fixheader: Convert #include "foo.h" to #include + for all the header files in src/cfortran directory. + + * debian/generic/Makefile, debian/generic/patches/includelist: Install all + headers from src/pawlib/paw/ntuple to /usr/include/paw/ntuple/ in the + libpaw1-dev package, not just str.h. Change all #include directives to + refer to the correct directory, e.g. #include . + (Really closes: #243860) + + * debian/generic/bin/cernlib, debian/generic/manpages/cernlib.1: Change + the cernlib script to link only CERN libraries statically by default, + not all libraries. Rename the -dy flag to -safe to give a better + indication of its behavior. The -dy flag still exists and is + equivalent for backwards compatibility. (closes: #246375) + + * Add icons for PAW/Paw++ and KXterm: + - debian/generic/icons/*.xbm: bitmaps extracted from + src/pawlib/paw/cmotif/init.c, src/packlib/kuip/programs/kxterm/kxterm.c + - debian/generic/icons/*.xpm: pixmaps created from kxterm.xbm and + browser.xbm, clipped to 48x48 pixels and given transparent background. + - debian/generic/Makefile, debian/{paw-common,kxterm}.{install,dirs}: add + pixmaps to paw-common and kxterm packages in /usr/share/pixmaps/ + + * debian/*.menu: Add menu items for PAW and static PAW. Add longtitle menu + descriptions. Include icons in menu entries. + + * debian/local/control/*-dev.control: In short descriptions of libdevel + packages, s/static version/development files/. + + -- Kevin B. McCarty Mon, 17 May 2004 16:10:02 -0400 + +cernlib (2004.01.20-2) unstable; urgency=medium + + * Urgency medium due to fix for Important bug # 245915. See below. + + * A couple of fixes for the repercussions of changing to preserving case + by default in the last release: + - patch 040: Make sure to generate paw.metafile files in lowercase. + - patch 004: The PAW script should delete PAW.METAFILE as well as + paw.metafile if in the current directory and zero size; don't complain + if one or the other doesn't exist. + + * New binary packages: + - debian/dzedit.{dirs,install}, debian/local/control/dzedit.control, + debian/generic/manpages/dze{dit,X11}.1: Add package of dzedit. + - patch 004: Minor fixes to dzedit wrapper script. + - debian/generic/Makefile: Install dzedit binaries and man pages. + - debian/local/control/kuipc.control: Enable KUIPC package. + - debian/local/control/cernlib-core-dev.control: Add both to the + cernlib-core-dev metapackage. + + * debian/zftp.README.debian: Add a note that ZFTP doesn't respect + FILECASE KEEP. Since I doubt anyone uses ZFTP anyway, it looks to be not + worth the effort to track down all the places where this should be fixed. + + * debian/generic/Makefile, debian/*-dev.install: Install all of the + Cernlib include files. I don't think that most of them are + at all useful, but people are requesting them and I don't want to keep + adding them in incrementally with each request. Patch them at install + time to #include instead of "foo/bar.inc" or "bar.inc". + (closes: #243860) + + * debian/*-dev.links, debian/*-dev.dirs: Install links from /usr/include/*.h + to /usr/include/cfortran/*.h as some programs (HEPATLAS) look for C + header files there. + + * debian/generic/Makefile: Also install src/pawlib/paw/ntuple/str.h to + /usr/include/paw/str.h. + + * Fix FOWL code to remove undefined symbols from libphtools: + - debian/generic/patches/additions/phtools+fowl+dummy.c: Create weakly + defined dummy functions FSTART, USER, FINISH (to be overridden by user). + + Fix this and the similar file for herwig to print a message to stderr + rather than stdout if one of the dummy functions is called. + - patch 042: Fix Imakefile accordingly. Also comment out section of + qqstrt.F that depends upon obsolete "which" routine; it appears not + to be strictly necessary. In FOWLMP, call FSTART instead of START. + - debian/libphtools1-dev.README.debian: Add a note that the expected + user function is FSTART instead of START in order to avoid a name + clash with mathlib. + - (closes: #245915) + + * Deal with mdpool mess: + - patch 006: edits for src/pawlib/comis/comis/cspar.inc and mdpool.inc + - install upstream version of mdpool.inc (with above patch) to + /usr/include/comis/, along with my added md{pool,size}.h + - Note in libpaw1-dev's README.Debian and examples/pamain.c that + developers must now #include instead of + just . + + * patch 001 (against src/config/lnxLib.rules): Instead of having copies of + shared libraries in build tree, create symlinks from build tree to shlib + directory (as with static libraries), in order to save disk space. + + * debian/generic/Makefile: Slightly modify the compilation of pawX11.static + so that it isn't linked against Lesstif and other X libraries that it + doesn't really need. (The analogous operation for pawX11.dynamic will + have to wait until post-sarge release; see the cernlib-base TODO.Debian) + + * debian/rules: Delete build tree when no longer needed, to save more + disk space. This should reduce the number of buildds that error out with + "No space left on device". The build tree can still be kept by having + the string "keepbuild" in one's $DEB_BUILD_OPTIONS. + + * debian/rules, debian/local/rules-help.txt: Add "help" target. + + * debian/local/control/lib*.control: Apropos of bug # 245082 (already + closed), explicitly state in library package descriptions that the -dev + package must be installed in order to link against a library. + + * debian/cernlib-base.README.debian: Rewrite parts of base README file. + + * debian/*.TODO: Mention post-sarge plans. + + -- Kevin B. McCarty Wed, 28 Apr 2004 14:10:51 -0400 + +cernlib (2004.01.20-1) unstable; urgency=low + + * New upstream release (_extremely_ minimal changes to PAW). + + * The legacy packages not to be seen by m68k should be Arch: any rather than + Arch: all. This wouldn't be such a problem except that the montecarlo + legacy packages depend on isajet, which isn't compiled on m68k due to bug + # 225621. All legacy dummy packages changed back to Arch: any. + + * patch 040: Do NOT by default assume all filenames are meant to be in + lowercase. The original broken behavior may be restored to PAW by adding + "/KUIP/SET_SHOW/FILECASE CONVERT" to one's pawlogon.kumac file. + + * patch 041: Set more up-to-date and Debian-specific default helper apps + for PAW, e.g. gv instead of ghostview, sensible-editor instead of vi. + Add gv to Suggests field of paw{,++}{,-static} packages. One can use + alternative helper apps through PAW commands or environment variables; + see the entries for HOST_EDITOR, HOST_PAGER, HOST_PSVIEWER, HOST_PRINTER + in the PAW online help. + + * Add infrastructure for a package of kuipc, the Kit for a User Interface + Package Compiler. Not enabling the package yet, however, so that this + release can get into testing sooner. + - debian/generic/manpages/kuipc.1: write a man page. + - debian/generic/Makefile: install binary and man page. + - debian/kuipc.{dirs,install}: packaging data. + - debian/local/control/kuipc.disabled: control fields. + + * debian/generic/manpages/paw.1: Add the PAW FAQ to the list of URLs in + the "SEE ALSO" section. Add pawserv(8) to the "SEE ALSO" section. + Add environment variables for helper apps to the "ENVIRONMENT VARIABLES" + section. + + * debian/rules: Add "unpack" and "patch" targets, performing the obvious + operations, for convenience. + + * debian/generic/bin/gmake: Fix make wrapper script to work correctly when + there is already a gmake in the path. + + * debian/generic/patches/additions/include+assert.h: Update patched local + copy of assert.h to version taken from libc6-dev 2.3.2.ds1-11. + Bug #171908 still isn't fixed... + + * Debconf translations + - French: Christian Perrier (closes: #238466) + - Dutch: Luk Claes (closes: #241419) + + -- Kevin B. McCarty Fri, 2 Apr 2004 12:08:49 -0500 + +cernlib (2003.09.03-5) unstable; urgency=medium + + * debian/local/control/0base.control: Update Build-Depends for new X + packages. Note that we depend explicitly only upon x-dev, libxt-dev + and libx11-dev; other X libraries are needed only through lesstif2-dev, + whose own dependencies should take care of things. Build-Conflict + against libxt-dev (<< 4.3.0-3) in order to avoid compiling on buildds + having the xfree86 postrm script bug. + + * debian/local/control/lib{kuip,graf}x11-1-dev: Depend upon libxt-dev and + libx11-dev (>= 4.3.0-3), respectively, in preference to xlibs-dev. + + * debian/copyright, debian/generic/manpages/cernlib.1: Correct the pointers + to which packages contain README.Debian files explaining how to obtain + non-free Monte Carlo libraries. + + * debian/generic/bin/cernlib: Explicitly link Lesstif programs with + -lXm -lXt -lXp -lXext -lX11 -lSM -lICE on all arches, not just + powerpc. (Removed -lXpm since nothing in Cernlib or Lesstif seems to + use libXpm.) + + * debian/generic/scripts/makedeplist: Add missing -D argument to nm + for shared library dependency calculation. + + * patch 001: Noticed that the build process has sneakily linked in + libpacklib statically to many programs; prevent it from doing this + and link libpacklib dynamically instead. + + * gettextize pawserv Debconf template (closes: #234411): + - debian/pawserv.templates.master, debian/po/*: work based on patch + from Martin Quinson . + - debian/rules, debian/local/control/pawserv.control: woody backwards + compatibility hack based on this message: + http://lists.debian.org/debian-i18n/2003/debian-i18n-200307/msg00026.html + + * debian/kxterm.{postinst,prerm}: Delete, as they do nothing. Must have + been a holdover from the transition away from kxterm-static and + kxterm-common packages, last seen a long time ago in (unofficial) package + version 2002.12.02-0.1. + + * debian/*.menu: Quote all tags to fix lintian warning + "unquoted-string-in-menu-item". + + -- Kevin B. McCarty Wed, 3 Mar 2004 15:29:21 -0500 + +cernlib (2003.09.03-4) unstable; urgency=medium + + * patch 015: Add pawlib/comis/code/csrfun.F to the list of files to be + compiled without optimization. For reasons beyond my comprehension, + optimizing it, even at -O1, causes runtime breakage in dynamic PAW + as of recent versions of g77. (closes: #233689) + + -- Kevin B. McCarty Thu, 19 Feb 2004 18:12:06 +0100 + +cernlib (2003.09.03-3) unstable; urgency=low + + * Packaging rearrangements and fixes: + - debian/control, *.install, *.docs, etc.: Split libcern1{,-dev}, + libgraflib1{,-dev}, libmontecarlo1{,-dev} into packages for individual + libraries. The original library packages are now dummy packages and + have been changed to Arch: all. See NEWS.Debian for more detailed + information about the split. (closes: #212409) + - debian/control: Put "[Physics]" at the beginning of short descriptions + for GEANT and Monte Carlo library packages. + - debian/control: Add cernlib and various cernlib-* metapackages to make + life easier for people installing Cernlib. + - debian/control: Some lib*-dev packages were missing dependencies on other + dev packages (e.g. libc6-dev, xlibs-dev); also, libgeant1 was missing + a dependency upon geant321-data. Fixed. + - debian/control: Remove all Conflicts and Replaces with Cernlib soname + *.so.0 packages (lib*0{,-dev}) and kxterm-static, kxterm-common. All of + those were old and unofficial so it's time to forget about them. + - debian/control: Loosen version dependencies of and against various + Arch: all packages, since most of the data files, etc. haven't changed + in years. + - debian/control: Make a bunch of things depend on cernlib-base so its + README.Debian file is available for any Cernlib package. + - debian/control: Make paw-common and paw-demos Depend/Recommend + primarily on paw++ instead of paw++-static, now that all the bugs + due to dynamically linking pawlib are (I hope) worked out. + - debian/rules: Automatically regenerate debian/control from files + in debian/local/control directory in "clean" target. + + * Fixes for m68k: + - Work around FTBFS on m68k for now by not generating isajet758 packages: + + debian/rules: on m68k, generate control file without libisajet758 + packages or obsolete dummy packages + + debian/control: create two versions of the cernlib-montecarlo + metapackage control file (and make it Arch: any); select between them + in debian/rules + + debian/generic/Makefile: don't reference isajet758 on m68k + + patch 037: create CERNLIB_M68K define on m68k + + patch 001: (to src/mclibs/Imakefile) compile isajet only when + CERNLIB_M68K is not defined + + (closes: #222442) + - patch 037: Tweak compiler args in order to get PAW working: + + Remove -fomit-frame-pointer arg from g77 since -Ox (x > 0) implies it + and it inhibits debugging on some arches. + + Add -malign-int arg to gcc and g77 on m68k to fix the PAW bugs + resulting from misaligned arrays. + + * debian/generic/scripts/*: Update and improve dependency calculation + scripts. Information about them is now in the README in the same directory. + + * debian/generic/Makefile: Fix order of sed arguments PREFIX, LIBPREFIX + so that LIBPREFIX won't have PREFIX substituted out from underneath it. + + * debian/generic/Makefile: Edit cernlib-static and cernlib-install-arch + targets to remove possibility of overwriting dynamic paw* binaries with + static paw* binaries when resuming an aborted compile. + + * debian/generic/bin/cernlib: Force X libs to always be printed out when + a graphics driver X11 or Motif is specified. libkuipX11 should always be + linked against Motif (lesstif in Debian). + + * debian/libgraflib1.TODO: Deleted, since the README.Debian for paw* + packages solves the only item listed. + + * debian/paw{,++}-static.README.debian, debian/control: Add a note that + these packages are considered obsolete and superseded by paw{,++} packages. + + * patch 001: kxterm needs to be linked only to Lesstif / X libs, not any + of the Cern libraries. + + * debian/cernlib-base.README.debian: s/appropraite/appropriate/ + + -- Kevin B. McCarty Tue, 20 Jan 2004 12:32:13 -0500 + +cernlib (2003.09.03-2) unstable; urgency=low + + * debian/generic/bin/cernlib, patch 001: Fix Monte Carlo library + dependencies. herwig and isajet use PDFSET() function in pdflib. + + * patch 019: Comment out structm.F and pdfset.F in herwig Imakefile; + the real functions are in pdflib. + + * Fix paw* executables so that the COMIS interpreter works correctly + when dynamically linked: + + - patch 006: Instead of tracking down all the places in FORTRAN that + require a positive memory offset from /COMMON/MDPOOL/IQ to malloc()ed + code (a losing battle), declare MDPOOL/IQ in 0pamain.F and 0pamainm.F + so it will be in the bss section of dynamically linked paw{X11,++} + binaries. This should allow the COMIS interpreter to function + correctly in dynamically linked executables (closes: #212419, #212420). + Also add a check that memory is in fact allocated, and exit non-zero + with an error message if not. + + - debian/*paw*.README.debian, debian/control: Remove comments about bugs + in dynamically linked executables. + + - debian/libpaw1-dev.README.debian: Add note that MDPOOL/IQ must be + declared in any programs wishing to make use of COMIS and be dynamically + linked, ideally by #include'ing or . + (closes: #212412) + + - debian/libpaw1-dev.install: Install mdsize.h, mdpool.{h,inc} to + /usr/include. + + * debian/control: Add dependency on g77 to paw-static and paw++-static + packages. (How did I get away with forgetting that?) + + * debian/generic/manpages/paw-demos.1: Minor modifications to paw-demos + man page. + + * debian/rules: Give dh_shlibdeps the -l flag it needs to find the libraries + that have just been built. + + * debian/rules: Give -V argument to dh_makeshlibs to force dependencies + upon the current version of cernlib. + + -- Kevin B. McCarty Sun, 2 Nov 2003 19:45:47 -0500 + +cernlib (2003.09.03-1) unstable; urgency=low + + * New upstream release: + - src/mathlib/gen/d/d501l1.F: correct calculation of covariance matrix + - src/packlib/cspack/sysreq/{Imakefile,log.c,trace.c}: use stdarg.h + instead of gcc-3.3-deprecated varargs.h + * patch 013: Put optimization level for qp_execute.c file to -O0 on all + architectures since it's caused an ICE on at least one s390 machine as well + as on powerpc + * patch 029: fix line numbers for log.c patch due to upstream change + * patch 031: remove stdarg patches for trace.c, log.c (fixed upstream) + * patch 037: Set default optimization level for arm to -O2 after FTBFS on + elara buildd + * debian/control: Remove "Recommends: paw++-static | paw-binary" from libpaw1 + and libpaw1-dev. It makes no sense for the library to recommend + statically compiled programs, and I don't want it to recommend the + still-experimental dynamically compiled ones. + + -- Kevin B. McCarty Thu, 16 Oct 2003 15:58:59 -0400 + +cernlib (2003.08.21-3) unstable; urgency=low + + * whoops, remove obsolete entries from debian/local/todo.txt + * debian/control: Add Build-Conflicts on atlas2-dev to ensure that we build + against the netlib reference versions of blas and lapack. + * patch 001: Force hppa and alpha to use the Linux shlib rules (not HP-UX + or OSF!) in biglib.rules when LinuxArchitecture is defined. Should + fix FTBFS on those platforms. + * patch 037: Define CERNLIB_PPC for all big-endian architectures, + since that flag appears to be used only for endianness tests in Cernlib + source code. + - patches 013, 014, 037: For the few cases in Imakefiles when CERNLIB_PPC + is used specifically to test for the PowerPC chips, use a new define, + CERNLIB_POWERPC. + * patch 037: Lower default optimization on ia64 to -O2; maybe this will + prevent FTBFS. + * Minor touchups to documentation: + - debian/control: make package short descriptions more consistent, + clarify a few long descriptions + - debian/generic/manpages/paw.1: add URL for PAW tutorial, reference guide + - debian/copyright: s/replaced/restored/ in the last paragraph + - debian/paw{,++}{,-static}.README.debian: s/zserv/pawserv/g + - debian/pawserv.README.debian: add short note that configuration is done + via Debconf + + -- Kevin B. McCarty Thu, 25 Sep 2003 11:42:22 -0400 + +cernlib (2003.08.21-2) unstable; urgency=low + + * debian/control: Remove references to montecarlo-installer-data package + since it isn't in Debian (and I don't plan to upload it as of now). + Point to the README.Debian files that mention it instead. + * debian/control: move tetex-bin from Build-Depends-Indep to Build-Depends + to fix FTBFS on buildds (closes: #212241) + * debian/control: replace libmontecarlo1-dev dependency on libgeant1-dev + with libcern1-dev (closes: #212333) + * patch 035: use XmFontListAppendEntry(), not XmFontListCreate(), to avoid + obsolete function warning in lesstif + * patches 036, 037: substitute Imake.cf and parts of linux.cf from XFree86 + 4.2.1 for local copies in src/config, attempting to get Cernlib to compile + on non-{i386,powerpc} architectures + * debian/control: therefore, change Architecture from "i386 powerpc" to "any" + * patch 038: fix compilation bomb on macro of strndup() at high optimization + * patch 039: use DBLE(X), not REAL(X), to get real part of DOUBLE COMPLEX + variables + * debian/generic/Makefile: change the method of hacking in Debian-specific + configuration flags + * debian/rules: remove one layer of escapes from quotes in DEBIAN_VERSION + variable due to the Makefile change + * debian/generic/patches/options: removed (obsolete due to the above change) + * debian/local/bugs-to-file.txt: obsolete; removed + + -- Kevin B. McCarty Tue, 23 Sep 2003 15:06:19 -0400 + +cernlib (2003.08.21-1) unstable; urgency=low + + * New upstream release + * debian/control: Update Standards-Version to 3.6.1 (no changes required) + * patch 009: another fix for OS X dynamic library loading + (thanks to Keisuke Fujii) + * patches 027, 034: finish replacing mktemp() and tmpnam() by mkstemp() and + tmpfile() to avoid race conditions with temporary files + * patch 033: fix annoying kxterm warning about "Unknown keysym name: + InsertChar" by changing it to Insert in code. + * patch 034: if compiled with "-DCERNLIB_DEBIAN", have PAW bug reports + sent to submit@bugs.debian.org instead of Paw upstream, and include + Debian BTS bug report fields in the appropriate place + * debian/rules, local/Makefile, local/patches/options: support adding extra + defines to CernlibSystem + * Added note about using X's "Screen->BackingStore" option to prevent + HIGZ window corruption in each paw* package's README.Debian + * local/bin/cernlib: realizing that libkuipX11 doesn't exist in upstream + Cernlib, take account of this in the dependency script + * (sigh) Remove src/graflib/higz/higzcc/gifencode.c from the source tree + because it contains the patented LZW encoding algorithm. (Although + expired in the USA, this patent is in force until July 2004 in some + places.) Replace it with uncompressed GIF creation algorithm in + local/patches/additions/graflib+higz+higzcc+gifencode.c , following + libungif4's lib/egif_lib.c . + * various README.Debian's: add notes that the apt-installer and + montecarlo-installer-data packages are not currently in Debian, and + note the appropriate /etc/apt/sources.list line for obtaining them + * debian/control, debian/pawserv.*: + - Rename zserv binary package to pawserv + - debian/pawserv.{config,postinst,templates}: Use Debconf to determine + which of {pawserv,zserv} to enable in /etc/inetd.conf + * debian/control: No longer create binary packages fatmen and hepdb, as I + don't know enough about these programs to support them and Cernlib's docs + are completely unhelpful (e.g. referring to scripts that don't exist) + * debian/control: have geant321 Depend upon libgeant1-dev rather than + libgeant1, since libgeant1-dev is required for the gxint script to link + against the libraries + * local/patches/additions/include+assert.h: include local copy of assert.h , + patched to work around bug 171908 in makedepend + * local/Makefile: make sure patches are applied in the right order by + setting LANG and LC_COLLATE to C + * debian/copyright: Finally get around to listing all known source code + licenses and copyright holders here. + * debian/local/copyrights.txt: delete this, since all the information in it + is now included in debian/copyright + * debian/control: restrict Arch to i386 and powerpc for now + * debian/generic: decide to move top-level "local" directory here instead + as it would be annoying to have only partial diffs against it in the + diff.gz's for -2, -3, etc. + + -- Kevin B. McCarty Tue, 2 Sep 2003 22:57:23 -0400 + +cernlib (2003.05.14-0.1) unstable; urgency=low + + * Upstream changes: + - Fix for postscript generation code to make CUPS happier + - Fix for bug preventing use of long file paths (limit was increased + from 80 to 128 characters, and a warning was added) + . patch 030: increase limit further to 256 characters + - Fix for PAW segfault when run with $HOME unset (e.g. from CGI script) + * Bump Policy to 3.6.0 (no policy-specific changes needed) + * debian/changelog tidying: + - delete emacs local variable cruft from the bottom + - convert to UTF-8 encoding + * debian/local/control/paw-demos.control: mention the paw-demos script + * move most of the non-Debian-specific contents of debian/local to a new + local/ directory. Will include this directory in the orig.tar.gz + due to dpkg-source's inability to handle new directories (see Policy C.4.1) + * debian/rules, local/Makefile: move non-Debian-specific targets + to local/Makefile for eventual easier porting of non-Debian-specific + patches + * local/bin/gmake: edit to account for the case where GNU make + really is called "gmake" + * local/scripts: a couple obsolete things deleted, others updated + * local/patches/cfortran-inc: no longer used, deleted + (as of previous release; forgot to note this in changelog then) + * patch 027: fix various files to use tmpfile(), not mktemp() or tmpnam() + in order to avoid race condition (this work is not yet finished) + * local/Makefile, etc.: clean up Monte Carlo documentation: + - merge COJETS chapter files into one text file + - merge ISAJET LaTeX chapter files into one .tex file and convert to PS + - therefore, add Build-Depends-Indep on tetex-bin + - patch 028: fix bug in ISAJET .tex file + - name text files as *.txt, not *.doc + - add (small) text document for Eurodec library + - debian/montecarlo-doc.doc-base*: register documents with doc-base + * likewise, clean up Geant documentation: + - add various *.doc files found under geant321 directory, merging most of + them into geant321.txt and renaming the others to *.txt files + - add README.Debian file containing a table of contents for Geant docs + * Patches to make Cernlib compile on Mac OS X: + - patch 009: fix for executing compiled code within PAW (doesn't work + yet though) + - patch 029, local/patches/additions/config+MacOSX.*: add patch + from Remigius Mommsen , see + http://mommsen.home.cern.ch/mommsen/index.html?osx/cernlib.html + for building Cernlib from source on Mac OS X + - patch 029 also includes rudimentary "cuserid()" function since not + supplied by OS X + - patch 032: use regcomp()/regexec() on Linux and Mac OS X [instead of + regcmp()/regex() or re_comp()/re_exec(), of which OS X has neither] + * patch 031: port remaining varargs code to use stdarg, as GCC 3.3 has + removed support + * local/bin/cernlib: + - edit library path to depend on $CERN_ROOT if specified, $CERN and + $CERN_LEVEL otherwise + - allow cernlib script to recognize Mac OS X, including special-case + dependency of libblas on -lcblas -lf77blas -latlas + - add -lm and -lg2c explicitly to the output (fixes problem pointed out by + Michael Thaler) + - mention in man page that arguments to gcc/g77 should list source code / + object files before `cernlib lib1 lib2` command substitution + - have the default arch be the output of the included "sysname" function + instead of "default"; this was apparently an oversight on my part + * patch 001: fix Imakefile for kuesvr program to install it to $CERN_BINDIR + like everything else + * patch 009: fix potential problem with spaces in directory names + + -- Kevin B. McCarty Mon, 11 Aug 2003 14:58:06 -0400 + +cernlib (2003.03.18-0.1) unstable; urgency=low + + * New upstream release: really version 2003.02.03 but I didn't want to + introduce an epoch or a string like "2003.03.18+really2003.02.03" + * Fixes (I hope) a segfault of PAW in batch mode observed by Jan Wojcik + * Add various .car files to /usr/include for appropriate lib*-dev packages + at the request of Jo Fahlke + * Move debian/local/scripts/{remove-deadpool,fixheader} to + debian/local/bin since they are required by build + * Update Policy to 3.5.9 + * Move various lib*-dev packages from devel to libdevel Section + * paw-demos fixes: + - Move paw-demos files from /usr/share/doc/paw-demos/examples to + /usr/share/paw-demos to comply with Policy section 13.6 + - Remove patch 025 and detect $DISPLAY at script runtime + - Add --display option to paw-demos script + - Edit paw-demos manpage accordingly + + -- Kevin B. McCarty Wed, 23 Apr 2003 15:30:21 +0200 + +cernlib (2003.02.10-0.1) unstable; urgency=low + + * Author of Pythia/Jetset has not given CERN permission to GPL them; remove + them and their dependents (Ariadne, FRITIOF, Lepto) from source tree + - Bump cernlib upstream version since a new .orig.tar.gz file was created + with non-free code removed + - patch 001, debian/local/deadpool.txt: edit appropriately + - patches 020, 023, 024: no longer relevant; delete them + - patch 026, debian/local/patches/additions/geant321+gkine+dummy.c: + add dummy routines to replace the Jetset functions used by Geant + - debian/*.README.debian: explain how to obtain missing libraries + (hint: "apt-get install montecarlo-installer-data") + - Move libherwig59.{a,so} back to libmontecarlo1[-dev] since Geant only + depended upon it via Jetset + * debian/control: + - make kxterm Conflict with old kxterm-common package + - move *montecarlo* to "science" section and lib* (not -dev) to "libs" + - remove Build-Depends-Indep field, since no Arch "all" packages require + anything not required by Arch "any" packages + - compress all dependencies on some type of PAW to + "paw++-static | paw-binary" + - tighten package dependencies so that most cernlib binary packages depend + upon other cernlib binary packages with identical versions + - give Priority: extra to fatmen, hepdb, zftp, zserv packages + * debian/local/manpages: + - paw.1: add reference to kxterm(1) + - paw-demos.1: manpage for new paw-demos script added + - zftp.1, zserv.8, pawserv.8: new zftp, zserv manpages + * Remove references to undocumented(7) + * debian/local/bin/paw-demos: new script to run paw demos added + * debian/rules: add DH_ALWAYS_EXCLUDE=CVS and remove CVS delete snippet + from local Makefile + * debian/local/Makefile: patch .h files for -dev packages to + #include and to be protected from multiple inclusion + * debian/*.menu: move kxterm, paw++ from Apps/Programming to Apps/Science + * debian/local/bin/cernlib: update library names to work with + montecarlo-installer-data packaged libraries + * debian/local/scripts/fixheader: new script to touch up .h files + + -- Kevin B. McCarty Sun, 23 Feb 2003 00:48:57 +0100 + +cernlib (2002.12.02-0.2) unstable; urgency=low + + * debian/local/todo.txt: Was out of date; fixed now. + * debian/changelog: I forgot to note the following changes in -0.1: + - patch 022: assignment of string literals to pointers in shared libs + compiled with gcc 3.2 caused a segfault in paw + - patch 023: one of the ariadne test programs calls a nonexistent function + - patch 024: Compile dummy functions for pythia for cases when linkage with + libpdflib804 isn't required + * debian/control, debian/rules, debian/kxterm.*: Now that dynamic kxterm + works on powerpc, don't build kxterm-{common,static} binary packages; move + contents of kxterm-common package to kxterm binary package + * debian/cernlib-base.README.debian: update accordingly + * debian/paw, debian/paw++: update to note that dynamic paw, paw++ appear OK + on powerpc + * debian/local/manpages/cernlib.1: add "-dy" flag to cernlib(1) man page; + update library names + * debian/local/manpages/gxint.1: escape hyphens in text + * debian/local/manpages/kxterm.1: write a manpage for kxterm + * debian/local/app-defaults/*: some new, more sane default Xresource settings + * debian/control: Build-Depend upon lesstif2-dev | lesstif-dev + + -- Kevin B. McCarty Fri, 24 Jan 2003 15:39:29 +0100 + +cernlib (2002.12.02-0.1) unstable; urgency=low + + * New upstream release (focuses mainly on isajet, lepto and pythia libs) + * debian/control: Bump Standards-Version to 3.5.8 + * debian/control, patch 001: Bump shlib sonames to 1 for new release + * debian/rules: Add `get-orig-source' and `remove-deadpool' targets + * debian/rules: Split `install' target into install-arch and install-indep + * debian/local/bin/cernlib: now prefixes -static to output unless + itself given the -dy flag. This will be a temporary measure until I fix + cernlib libraries to work better as dynamic libs + * patch 021: Nevertheless, compile packaged binaries dynamically except + for the ones in the *-static packages. + + -- Kevin B. McCarty Wed, 15 Jan 2003 17:55:43 +0100 + +cernlib (2002.04.26-0.9) unstable; urgency=low + + * The "fix library dependencies" release -- never publicly released + * Remove "-lSM -lICE -lXpm" from cernlib output on non-PPC + * debian/local/scripts/makedeplist: new script to aid in doing so + * Move several files from mathlib/gen/{d,n}/ to packlib/hbook/ in order to + remove an undesirable dependency of packlib upon mathlib + * debian/paw++-static.manpages: delete (it creates broken symlinks + and the correct symlink is created by debian/paw++-static.links) + * Move code under debian/local/Makefile fixcfortran target to + stampdir/patch-stamp target, and delete fixcfortran target + * debian/local/patches/additions/: Make it easier to add new files to source + * patch 001: Fix programs to compile with correct arguments to cernlib script + * patch 002: Favor the C version of lenocc() over the Fortran version + * patch 011: delete this patch, its purpose is served by 016 + * patch 012: create an Imake macro for compiling Fortran targets sans + optimization + * patch 015: Some files don't compile with -O3 using g77 version 3.2; + compile them with no optimization + * patch 016: Pick a qnexte.c and qnext.F file to compile -- cause the rest + not to be compiled + * patch 017: Use the gamma function in mathlib, not in isajet751 + * patch 018: Move kernlib to the top of the source tree so it can be built + before packlib, and likewise for packlib/kuip/code_motif so it + can be built after graflib + * patches 019, 020: Compile dummy.c user-definable functions with weak + linkage for libherwig59, libariadne + * Move lib{ariadne,herwig59,jetset74} from libmontecarlo* to + libgeant* packages + * Edit the cernlib script to reflect new library dependencies + * Add some additional documentation to the geant321-doc package + + -- Kevin McCarty Thu, 9 Jan 2003 12:32:12 -0500 + +cernlib (2002.04.26-0.8) unstable; urgency=low + + * Fix src/pawlib/comis/code/cscrexec.F so that it compiles temporary + dynamic libraries with -fPIC and without missing symbols + * Allow paths to Fortran code to include characters like -, +, =, etc. + in COMIS interpreter src/pawlib/paw/code/pawfca.F + * Remove circular dependency between QNEXT and QNEXTE symbols of packlib and + kernlib libraries + * Fix relocation issues causing shared libraries to bomb on PPC (three + Imakefiles with special cases caused compilation without -fPIC in + libpaw and libherwig) + * cernlib and gxint scripts changed from #!/bin/sh to #!/bin/bash scripts + since they don't seem to work correctly with dash + * libkuipX11 is not depended upon by libgraflib or libgrafX11; edit cernlib + script appropriately + + -- Kevin B. McCarty Sat, 14 Dec 2002 21:08:04 -0500 + +cernlib (2002.04.26-0.7) unstable; urgency=low + + * Split giant patch 001-shlibs+FHS in debian/local/patches into several + smaller patches + * _Really_ fix man page symlinks (using dh_link instead of dh_installman) + + -- Kevin B. McCarty Sun, 17 Nov 2002 11:36:41 +0100 + +cernlib (2002.04.26-0.6) unstable; urgency=low + + * Fix man page symlinks for various packages + + -- Kevin B. McCarty Thu, 14 Nov 2002 10:17:34 +0100 + +cernlib (2002.04.26-0.5) unstable; urgency=low + + * Use virtual packages paw-binary, kxterm-binary to fix dependency + debacle introduced by previous version + + -- Kevin B. McCarty Wed, 13 Nov 2002 20:04:21 +0100 + +cernlib (2002.04.26-0.4) unstable; urgency=low + + * Add menu entries for paw++-static, kxterm{,-static} + * Now use update-alternatives to make it possible to install both + {paw,paw++,kxterm} and {paw,paw++,kxterm}-static at once + * Create new package, paw-common, for arch: all data (manpages, + app-defaults) shared by all paw and paw++ packages + * Likewise for kxterm-common + * /usr/bin/paw script is now in paw-common package and will now call paw++ + if a paw++ package is installed but a paw package is not + + -- Kevin B. McCarty Wed, 13 Nov 2002 11:27:30 +0100 + +cernlib (2002.04.26-0.3) unstable; urgency=low + + * Explicitly make scripts executable in debian/rules + * Change build dependency in debian/control from obsolete lapack99-dev + to lapack-dev + * Remove ${shlibs:Depends} from arch-independent package dependencies + * Enable shadow password support in server binaries + * Add lines in /etc/inetd.conf for zserv, pawserv in zserv.postinst + * Depend upon latest netbase (>= 4.08) for required lines in /etc/services + * Add support for noopt and nostrip options of $DEB_BUILD_OPTIONS + * Add /usr/share/doc/cernlib-base/README.Debian to describe major changes + * Move hdiff files from packlib to mathlib to avoid circular + library dependencies + * Purge most non-free code from source tree (the rest will take longer) + * Fix bugs in linux-pmac.cf preventing compilation on powerpc + * Add *.h and example files from src_cfortran.tar.gz to appropriate -dev + packages + * Separate cfortran into a separate package and Build-Depend: on it; also, + -dev packages now Depend: upon cfortran + * Create paw-static, paw++-static, and kxterm-static packages to work + around bugs in some dynamically linked programs for now + * Split off libmontecarlo0{,-dev,-doc} packages from libgeant0{,-dev} + and montecarlo-data from geant321-data so that people who just want Geant + don't get a lot of extraneous mclibs + + -- Kevin B. McCarty Tue, 12 Nov 2002 12:00:00 +0100 + +cernlib (2002.04.26-0.2) unstable; urgency=low + + * Fix /usr/bin/gxint so it uses the correct Fortran file: + /usr/bin/geant321/gxint.f , not /usr/bin/geant321/geant.f + * Add debian/hepdb.README.debian to alert user that some programs + in the package have had name changes + + -- Kevin B. McCarty Mon, 17 Jun 2002 18:41:26 -0400 + +cernlib (2002.04.26-0.1) unstable; urgency=low + + * Initial Debian version + * Imakefiles heavily modified so that the programs will use shared rather + than static libraries + + -- Kevin B. McCarty Sat, 8 Jun 2002 01:04:08 -0400 + --- cernlib-2006.dfsg.2.orig/debian/copyright.in +++ cernlib-2006.dfsg.2/debian/copyright.in @@ -0,0 +1,253 @@ +This package was debianized by Kevin B. McCarty . +It was downloaded from the URL +http://cernlib.web.cern.ch/cernlib/download/2006_source/tar/2006_src.tar.gz + +The very large file 2006_src.tar.gz was split up into individual modules, +from which non-free files were removed, of which the relevant ones have been +recompressed in the "upstream" directory of the cernlib source package. See +the file debian/README.Debian-source in the source package for a detailed +description of this process. + + +COPYRIGHT +--------- + +CERNLIB is copyright (C) CERN and others. As of this writing (9 January 2008), +the web page http://wwwasd.web.cern.ch/wwwasd/cernlib/conditions.html (which +gives the terms under which CERNLIB may be used) states: + + CERNLIB Availability + + (C) Copyright CERN except where explicitly stated otherwise. Permission to + use and/or redistribute this work is granted under the terms of the GNU + General Public License. FLUKA routines included in GEANT3 are joint copyright + of INFN and CERN and are not licensed under the GPL: permission to use and/or + redistribute outside GEANT3 should be negotiated. The software and + documentation made available under the terms of this license are provided + with no warranty. + + Last modified: 18-March-2004 + +The aforementioned FLUKA routines have been excised from the CERNLIB source +code and binary packages distributed by Debian. + +There is some ambiguity as to whether CERN intended to have CERNLIB available +specifically under GPL version 2 (the current version at the time the above- +mentioned web page was written) or always under the current version. (The text +"GNU General Public License" in the web page quoted above is a hyperlink to +http://www.gnu.org/copyleft/gpl.html which, as of this writing, references GPL +version 3.) I have requested clarification from the upstream maintainer. In +the meantime, it should be noted that the orig.tar.gz files for CERNLIB in +Debian were obtained from the upstream web site prior to the release of GPL +version 3. It therefore seems to me to be safe to assume that re-distribution +of CERNLIB from the Debian source packages is permissible under the terms +either of GPL version 2 or of the current GPL version, at the re-distributor's +option. + +On Debian systems, the complete text of the current version of the GNU General +Public License can be found in the file `/usr/share/common-licenses/GPL-3'. +The text of version 2 can be found at `/usr/share/common-licenses/GPL-2'. + + +EXCEPTIONS +---------- + +Some source files of CERNLIB are provided (in parts, or in entirety) under +different licenses which are compatible with the GPL. See the table and +licenses below for details. (File paths are relative to the directory +cernlib-$VERSION/src/ after running "debian/rules unpack".) Most of the +differences in the licenses below are only in the exact wordings. The +"Package(s)" column lists the binary Debian packages in which each piece of +code is compiled or otherwise included. + +Copyright codes are as follows: + +LGPL - Library GPL +BSD - BSD style license +NO AD - BSD style license with negative advertising clause + +Package codes are as follows: + +Dev = most development packages +Kx = kxterm +Graf = libgrafx11-1-gfortran, libgrafx11-1-dev +Pack = libpacklib1-gfortran, libpacklib1-dev +KuiM = libpacklib-lesstif1-gfortran, libpacklib-lesstif1-dev + +File(s) Package(s) License type Owner +------- ---------- ------------ ----- +cfortran/* Dev LGPL [1] [a] +graflib/higz/higzcc/rotated.c Graf BSD [3] [b] +graflib/higz/higzcc/tkhigz.c Graf BSD [4] [c] +packlib/cspack/sysreq/telnet.h Pack BSD [2] [c] +packlib/kuip/code_kuip/getline.c Pack BSD [5] [d] +packlib/kuip/code_motif/icbox.h KuiM NO AD [6] [e] +packlib/kuip/code_motif/icboxp.h KuiM NO AD [6] [e] +packlib/kuip/code_motif/iconbox.c KuiM NO AD [6] [e] +packlib/kuip/code_motif/iconwidget.c KuiM NO AD [7] [f] +packlib/kuip/code_motif/icwid.h KuiM NO AD [7] [f] +packlib/kuip/code_motif/icwidp.h KuiM NO AD [7] [f] +packlib/kuip/code_motif/kuxxt.c KuiM NO AD [8] [g] +packlib/kuip/code_motif/mkuxxt.h KuiM NO AD [8] [g] +packlib/kuip/programs/kxterm/uxxt.c Kx NO AD [8] [g] +packlib/kuip/programs/kxterm/uxxt.h Kx NO AD [8] [g] + +Exception copyright holders +--------------------------- + +[a] Burkhard Burow, , + http://www-zeus.desy.de/~burow/cfortran/index.htm + +[b] Alan Richardson, , and O. Couet + +[c] The Regents of the University of California + +[d] Chris Thewalt, + +[e] Alphonse A. Rademakers, , + CN/AS Division + CERN, European Organization for Nuclear Research + 1123 Geneve, Switzerland + +[f] Addison-Wesley Publishing Company + +[g] Visual Edge Software Ltd. + + +Exception license details +------------------------- + +[1] On Debian systems, the complete text of the GNU Library General Public + License can be found in the file `/usr/share/common-licenses/LGPL-2'. + +[2] On Debian systems, the complete text of the BSD License + can be found in the file `/usr/share/common-licenses/BSD'. + +[3] xvertext 5.0, Copyright (c) 1993 Alan Richardson (mppa3@uk.ac.sussex.syma) + Alignment definition modified by O.Couet. + Mods IBM/VM by O.Couet. + + Permission to use, copy, modify, and distribute this software and its + documentation for any purpose and without fee is hereby granted, provided + that the above copyright notice appear in all copies and that both the + copyright notice and this permission notice appear in supporting + documentation. All work developed as a consequence of the use of + this program should duly acknowledge such use. No representations are + made about the suitability of this software for any purpose. It is + provided "as is" without express or implied warranty. + +[4] Copyright (c) 1991-1993 The Regents of the University of California. + All rights reserved. + + Permission is hereby granted, without written agreement and without + license or royalty fees, to use, copy, modify, and distribute this + software and its documentation for any purpose, provided that the + above copyright notice and the following two paragraphs appear in + all copies of this software. + + IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR + DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT + OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF + CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS + ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO + PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + +[5] Copyright (C) 1991, 1992 by Chris Thewalt (thewalt@ce.berkeley.edu) + + Permission to use, copy, modify, and distribute this software + for any purpose and without fee is hereby granted, provided + that the above copyright notices appear in all copies and that both the + copyright notice and this permission notice appear in supporting + documentation. This software is provided "as is" without express or + implied warranty. + +[6] Copyright 1992 Alphonse A. Rademakers + + Permission to use, copy, modify, distribute, and sell this software + and its documentation for any purpose is hereby granted without + fee, provided that the above copyright notice appears in all copies + and that both that copyright notice and this permission notice + appear in supporting documentation, and that the name of + Alphonse A. Rademakers or CERN not be used in advertising or + publicity pertaining to distribution of the software without + specific, written prior permission. Alphonse A. Rademakers and + CERN make no representations about the suitability of this software + for any purpose. It is provided "as is" without express or implied + warranty. + + Alphonse A. Rademakers and CERN disclaim all warranties with + regard to this software, including all implied warranties of + merchantability and fitness, in no event shall + Alphonse A. Rademakers or CERN be liable for any special, indirect + or consequential damages or any damages whatsoever resulting from + loss of use, data or profits, whether in an action of contract, + negligence or other tortious action, arising out of or in + connection with the use or performance of this software. + + [Debian maintainer's note: Although the files with this copyright are + described as "based on ideas by Thomas Berlage" (see next entry), a + comparison with the original IconBox code of Thomas Berlage, available by + FTP at (e.g.) ftp://ftp.x.org/R5contrib/berlage.motif.tar.Z , shows that + they were written from scratch.] + +[7] Copyright 1991 Addison-Wesley Publishing Company + + Permission to use, copy, modify, distribute, and sell this software and its + documentation for any purpose is hereby granted without fee, provided that + the above copyright notice appear in all copies and that both that + copyright notice and this permission notice appear in supporting + documentation, and that the name of Addison-Wesley not be used in + advertising or publicity pertaining to distribution of the software without + specific, written prior permission. Addison-Wesley makes no representations + about the suitability of this software for any purpose. It is provided + as is" without express or implied warranty. + + ADDISON-WESLEY DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT + SHALL ADDISON-WESLEY BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL + DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR + PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS + ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF + THIS SOFTWARE. + + Berlage: OSF/MOTIF: CONCEPTS AND PROGRAMMING + + ISBN 0 201 55792 4 + + To order please contact your local Addison-Wesley office. + + [Debian maintainer's note: The COPYRIGHT file referred to by the files + iconwidget.c, icwid.h, and icwidp.h, and quoted above, is not included in + the CERNLIB source code. It, along with the original versions of those + files (named IconWidget.c, IconWidget.h, and IconWidgetP.h, respectively), + may be found in the materials distributed with the book _OSF/Motif: + Concepts and Programming_, by Thomas Berlage, (C) 1991 Addison-Wesley + Publishing Company, or downloadable by FTP from (e.g.) + ftp://ftp.x.org/R5contrib/berlage.motif.tar.Z .] + +[8] Copyright (c) 1991, Visual Edge Software Ltd. + + ALL RIGHTS RESERVED. Permission to use, copy, modify, and + distribute this software and its documentation for any purpose + and without fee is hereby granted, provided that the above + copyright notice appear in all copies and that both that + copyright notice and this permission notice appear in supporting + documentation, and that the name of Visual Edge Software not be + used in advertising or publicity pertaining to distribution of + the software without specific, written prior permission. The year + included in the notice is the year of the creation of the work. + + +DELETIA +------- + +The following files and directories have been removed from the Debian source +package of CERNLIB due to license ambiguities or incompatibilities with the GPL +(e.g. positive BSD advertising clause). If needed, they may be found in the +upstream source tarballs. + +DEADPOOL_LIST_GOES_HERE --- cernlib-2006.dfsg.2.orig/debian/README.Debian-source +++ cernlib-2006.dfsg.2/debian/README.Debian-source @@ -0,0 +1,68 @@ +As of CERNLIB version 2006, upstream ships all CERNLIB code in a single +enormous tarball. The tarball may be obtained as of this writing from the URL +http://cernlib.web.cern.ch/cernlib/download/2006_source/tar/2006_src.tar.gz + +For reasons that are partly historical (this is the first time upstream has +shipped a single monolithic tarball), and partly concerned with maintainability +(having several fairly independent source packages implies less frequent +uploads for each), CERNLIB is split up into four source packages in Debian: +"cernlib", "mclibs", "paw", and "geant321", and these source packages (tarballs +within tarballs) are generated in a somewhat convoluted fashion. Note that +repackaging the upstream source would have been necessary in any event, due to +numerous unimportant files, as well as some Monte Carlo libraries, that have +unclear or non-free licenses. + +In order to generate the orig.tar.gz, one needs to take the following steps. +These instructions are generically applicable to all four CERNLIB source +packages in Debian; everywhere below, consider "cernlib" as a variable standing +for the actual name of the source package in question. + +Either: + +a) Taking care to have the cernlib-base-dev binary package installed (except + if you are building the orig.tar.gz for the "cernlib" source package), + with version >= 2006.dfsg.2-1, cd into the Debian source package directory + (cernlib- for instance), place the above-mentioned CERNLIB + 2006_src.tar.gz upstream tarball into "..", and run the command + "fakeroot debian/rules get-orig-source". The file + "../cernlib_.orig.tar.gz" (e.g.) should be generated automatically. + +b) If you are a glutton for punishment, a new orig.tar.gz can be generated + manually as follows. This is best done in a separate scratch directory + that initially contains no files other than the 2006_src.tar.gz tarball + from upstream. You will need to have a copy of the Debian source package + in question (at least, the files under the debian directory) for reference. + + i) Uncompress the tarball; it will unpack into a directory named "2006". + ii) Create a directory named cernlib-.orig ("cernlib" being the + source package name, and the upstream version, including + any ".dfsg*" suffix). + iii) Create a subdirectory "upstream" under cernlib-.orig. + iv) For each subdirectory or file inside the directory "2006/src" that + is mentioned in the $(MY_MODULES) "make" variable at the top of + debian/rules, do the following, supposing that the subdirectory + or file is named . + + * mkdir -p cernlib-.orig/upstream/2006/src/ + * cp -a 2006/src/ cernlib-.orig/upstream/2006/src/ + * Delete non-free files: For each file or directory listed in + debian/deadpool.txt, if that file or directory appears with the + given path relative to cernlib-.orig/upstream/2006/src, + delete it. + * cd cernlib-.orig/upstream/ + * tar czf src_.tar.gz 2006 + * rm -r 2006 # remember, this is under the nascent Debian source + # tree, NOT in your main scratch directory + * Change back up to your scratch directory + + For any module tarball src_.tar.gz that contains only code + identical to that in the last official Debian orig.tar.gz, you can + just copy in that module tarball from the old unpacked orig.tar.gz + to the new source directory, skipping the above bullet points. + (Unless, of course, the module tarball needs to be rebuilt because + it was just discovered to contain more non-free code.) + + v) tar cf cernlib_.orig.tar cernlib-.orig + vi) gzip -v9 cernlib_.orig.tar + + -- Kevin B. McCarty , Thu, 26 Apr 2007 --- cernlib-2006.dfsg.2.orig/debian/copyright +++ cernlib-2006.dfsg.2/debian/copyright @@ -0,0 +1,262 @@ +This package was debianized by Kevin B. McCarty . +It was downloaded from the URL +http://cernlib.web.cern.ch/cernlib/download/2006_source/tar/2006_src.tar.gz + +The very large file 2006_src.tar.gz was split up into individual modules, +from which non-free files were removed, of which the relevant ones have been +recompressed in the "upstream" directory of the cernlib source package. See +the file debian/README.Debian-source in the source package for a detailed +description of this process. + + +COPYRIGHT +--------- + +CERNLIB is copyright (C) CERN and others. As of this writing (9 January 2008), +the web page http://wwwasd.web.cern.ch/wwwasd/cernlib/conditions.html (which +gives the terms under which CERNLIB may be used) states: + + CERNLIB Availability + + (C) Copyright CERN except where explicitly stated otherwise. Permission to + use and/or redistribute this work is granted under the terms of the GNU + General Public License. FLUKA routines included in GEANT3 are joint copyright + of INFN and CERN and are not licensed under the GPL: permission to use and/or + redistribute outside GEANT3 should be negotiated. The software and + documentation made available under the terms of this license are provided + with no warranty. + + Last modified: 18-March-2004 + +The aforementioned FLUKA routines have been excised from the CERNLIB source +code and binary packages distributed by Debian. + +There is some ambiguity as to whether CERN intended to have CERNLIB available +specifically under GPL version 2 (the current version at the time the above- +mentioned web page was written) or always under the current version. (The text +"GNU General Public License" in the web page quoted above is a hyperlink to +http://www.gnu.org/copyleft/gpl.html which, as of this writing, references GPL +version 3.) I have requested clarification from the upstream maintainer. In +the meantime, it should be noted that the orig.tar.gz files for CERNLIB in +Debian were obtained from the upstream web site prior to the release of GPL +version 3. It therefore seems to me to be safe to assume that re-distribution +of CERNLIB from the Debian source packages is permissible under the terms +either of GPL version 2 or of the current GPL version, at the re-distributor's +option. + +On Debian systems, the complete text of the current version of the GNU General +Public License can be found in the file `/usr/share/common-licenses/GPL-3'. +The text of version 2 can be found at `/usr/share/common-licenses/GPL-2'. + + +EXCEPTIONS +---------- + +Some source files of CERNLIB are provided (in parts, or in entirety) under +different licenses which are compatible with the GPL. See the table and +licenses below for details. (File paths are relative to the directory +cernlib-$VERSION/src/ after running "debian/rules unpack".) Most of the +differences in the licenses below are only in the exact wordings. The +"Package(s)" column lists the binary Debian packages in which each piece of +code is compiled or otherwise included. + +Copyright codes are as follows: + +LGPL - Library GPL +BSD - BSD style license +NO AD - BSD style license with negative advertising clause + +Package codes are as follows: + +Dev = most development packages +Kx = kxterm +Graf = libgrafx11-1-gfortran, libgrafx11-1-dev +Pack = libpacklib1-gfortran, libpacklib1-dev +KuiM = libpacklib-lesstif1-gfortran, libpacklib-lesstif1-dev + +File(s) Package(s) License type Owner +------- ---------- ------------ ----- +cfortran/* Dev LGPL [1] [a] +graflib/higz/higzcc/rotated.c Graf BSD [3] [b] +graflib/higz/higzcc/tkhigz.c Graf BSD [4] [c] +packlib/cspack/sysreq/telnet.h Pack BSD [2] [c] +packlib/kuip/code_kuip/getline.c Pack BSD [5] [d] +packlib/kuip/code_motif/icbox.h KuiM NO AD [6] [e] +packlib/kuip/code_motif/icboxp.h KuiM NO AD [6] [e] +packlib/kuip/code_motif/iconbox.c KuiM NO AD [6] [e] +packlib/kuip/code_motif/iconwidget.c KuiM NO AD [7] [f] +packlib/kuip/code_motif/icwid.h KuiM NO AD [7] [f] +packlib/kuip/code_motif/icwidp.h KuiM NO AD [7] [f] +packlib/kuip/code_motif/kuxxt.c KuiM NO AD [8] [g] +packlib/kuip/code_motif/mkuxxt.h KuiM NO AD [8] [g] +packlib/kuip/programs/kxterm/uxxt.c Kx NO AD [8] [g] +packlib/kuip/programs/kxterm/uxxt.h Kx NO AD [8] [g] + +Exception copyright holders +--------------------------- + +[a] Burkhard Burow, , + http://www-zeus.desy.de/~burow/cfortran/index.htm + +[b] Alan Richardson, , and O. Couet + +[c] The Regents of the University of California + +[d] Chris Thewalt, + +[e] Alphonse A. Rademakers, , + CN/AS Division + CERN, European Organization for Nuclear Research + 1123 Geneve, Switzerland + +[f] Addison-Wesley Publishing Company + +[g] Visual Edge Software Ltd. + + +Exception license details +------------------------- + +[1] On Debian systems, the complete text of the GNU Library General Public + License can be found in the file `/usr/share/common-licenses/LGPL-2'. + +[2] On Debian systems, the complete text of the BSD License + can be found in the file `/usr/share/common-licenses/BSD'. + +[3] xvertext 5.0, Copyright (c) 1993 Alan Richardson (mppa3@uk.ac.sussex.syma) + Alignment definition modified by O.Couet. + Mods IBM/VM by O.Couet. + + Permission to use, copy, modify, and distribute this software and its + documentation for any purpose and without fee is hereby granted, provided + that the above copyright notice appear in all copies and that both the + copyright notice and this permission notice appear in supporting + documentation. All work developed as a consequence of the use of + this program should duly acknowledge such use. No representations are + made about the suitability of this software for any purpose. It is + provided "as is" without express or implied warranty. + +[4] Copyright (c) 1991-1993 The Regents of the University of California. + All rights reserved. + + Permission is hereby granted, without written agreement and without + license or royalty fees, to use, copy, modify, and distribute this + software and its documentation for any purpose, provided that the + above copyright notice and the following two paragraphs appear in + all copies of this software. + + IN NO EVENT SHALL THE UNIVERSITY OF CALIFORNIA BE LIABLE TO ANY PARTY FOR + DIRECT, INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES ARISING OUT + OF THE USE OF THIS SOFTWARE AND ITS DOCUMENTATION, EVEN IF THE UNIVERSITY OF + CALIFORNIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + + THE UNIVERSITY OF CALIFORNIA SPECIFICALLY DISCLAIMS ANY WARRANTIES, + INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS FOR A PARTICULAR PURPOSE. THE SOFTWARE PROVIDED HEREUNDER IS + ON AN "AS IS" BASIS, AND THE UNIVERSITY OF CALIFORNIA HAS NO OBLIGATION TO + PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + +[5] Copyright (C) 1991, 1992 by Chris Thewalt (thewalt@ce.berkeley.edu) + + Permission to use, copy, modify, and distribute this software + for any purpose and without fee is hereby granted, provided + that the above copyright notices appear in all copies and that both the + copyright notice and this permission notice appear in supporting + documentation. This software is provided "as is" without express or + implied warranty. + +[6] Copyright 1992 Alphonse A. Rademakers + + Permission to use, copy, modify, distribute, and sell this software + and its documentation for any purpose is hereby granted without + fee, provided that the above copyright notice appears in all copies + and that both that copyright notice and this permission notice + appear in supporting documentation, and that the name of + Alphonse A. Rademakers or CERN not be used in advertising or + publicity pertaining to distribution of the software without + specific, written prior permission. Alphonse A. Rademakers and + CERN make no representations about the suitability of this software + for any purpose. It is provided "as is" without express or implied + warranty. + + Alphonse A. Rademakers and CERN disclaim all warranties with + regard to this software, including all implied warranties of + merchantability and fitness, in no event shall + Alphonse A. Rademakers or CERN be liable for any special, indirect + or consequential damages or any damages whatsoever resulting from + loss of use, data or profits, whether in an action of contract, + negligence or other tortious action, arising out of or in + connection with the use or performance of this software. + + [Debian maintainer's note: Although the files with this copyright are + described as "based on ideas by Thomas Berlage" (see next entry), a + comparison with the original IconBox code of Thomas Berlage, available by + FTP at (e.g.) ftp://ftp.x.org/R5contrib/berlage.motif.tar.Z , shows that + they were written from scratch.] + +[7] Copyright 1991 Addison-Wesley Publishing Company + + Permission to use, copy, modify, distribute, and sell this software and its + documentation for any purpose is hereby granted without fee, provided that + the above copyright notice appear in all copies and that both that + copyright notice and this permission notice appear in supporting + documentation, and that the name of Addison-Wesley not be used in + advertising or publicity pertaining to distribution of the software without + specific, written prior permission. Addison-Wesley makes no representations + about the suitability of this software for any purpose. It is provided + as is" without express or implied warranty. + + ADDISON-WESLEY DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, + INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT + SHALL ADDISON-WESLEY BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL + DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR + PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS + ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF + THIS SOFTWARE. + + Berlage: OSF/MOTIF: CONCEPTS AND PROGRAMMING + + ISBN 0 201 55792 4 + + To order please contact your local Addison-Wesley office. + + [Debian maintainer's note: The COPYRIGHT file referred to by the files + iconwidget.c, icwid.h, and icwidp.h, and quoted above, is not included in + the CERNLIB source code. It, along with the original versions of those + files (named IconWidget.c, IconWidget.h, and IconWidgetP.h, respectively), + may be found in the materials distributed with the book _OSF/Motif: + Concepts and Programming_, by Thomas Berlage, (C) 1991 Addison-Wesley + Publishing Company, or downloadable by FTP from (e.g.) + ftp://ftp.x.org/R5contrib/berlage.motif.tar.Z .] + +[8] Copyright (c) 1991, Visual Edge Software Ltd. + + ALL RIGHTS RESERVED. Permission to use, copy, modify, and + distribute this software and its documentation for any purpose + and without fee is hereby granted, provided that the above + copyright notice appear in all copies and that both that + copyright notice and this permission notice appear in supporting + documentation, and that the name of Visual Edge Software not be + used in advertising or publicity pertaining to distribution of + the software without specific, written prior permission. The year + included in the notice is the year of the creation of the work. + + +DELETIA +------- + +The following files and directories have been removed from the Debian source +package of CERNLIB due to license ambiguities or incompatibilities with the GPL +(e.g. positive BSD advertising clause). If needed, they may be found in the +upstream source tarballs. + +car/geanf.car +car/geanf321.car +car/jetset74.car +graflib/higz/igold/golini.F +packlib/cspack/sysreq/pwd_vms.h +packlib/cspack/sysreq/sgtty.h +packlib/cspack/vmsc/ +packlib/fatmen/scripts/unix/ctab_root.dat +packlib/kernlib/kernbit/z037/astdoc.F +packlib/kernlib/kernbit/z037/fiopat.s --- cernlib-2006.dfsg.2.orig/debian/pawserv.templates +++ cernlib-2006.dfsg.2/debian/pawserv.templates @@ -0,0 +1,24 @@ +# These templates have been reviewed by the debian-l10n-english +# team +# +# If modifications/additions/rewording are needed, please ask +# debian-l10n-english@lists.debian.org for advice. +# +# Even minor modifications require translation updates and such +# changes should be coordinated with translators and reviewers. + +Template: pawserv/which_servers +Type: select +# Translators: "Both" means both "Pawserv" and "Zserv" to the question +# about servers to be run +#flag:translate:3 +__Choices: Pawserv, Zserv, Both +Default: Pawserv +_Description: Servers to be run from inetd: + This package includes both the pawserv daemon (permitting remote hosts to + read local files while running PAW/Paw++) and the zserv daemon (allowing + remote hosts to log in using CERN's ZFTP protocol). + . + These servers are run from the inetd superserver and either both or + only one of them may be enabled. Enabling 'pawserv' alone is + sufficient for most users. --- cernlib-2006.dfsg.2.orig/debian/rules +++ cernlib-2006.dfsg.2/debian/rules @@ -0,0 +1,80 @@ +#!/usr/bin/make -f + +MY_NAME = cernlib +MY_MODULES = Imakefile car cfortran config graflib include \ + man mathlib p5boot packlib patchy scripts + +include debian/cernlib-debian.mk + +binary-arch: install-arch + dh_testdir + dh_testroot + dh_install -s + # move a couple files around + PL=debian/libpacklib1-gfortran/usr ; \ + mv -f $$PL/bin/kuesvr $$PL/lib/libpacklib1-gfortran/ ; \ + mv -f $$PL/share/man/man1/kuesvr.1 $$PL/share/man/man7/kuesvr.7 ; \ + sed -i -e '/^\.TH/s/1/7/' $$PL/share/man/man7/kuesvr.7 ; \ + rmdir $$PL/bin $$PL/share/man/man1 + dh_installdocs -s + dh_installexamples -s + dh_installmenu -s + dh_installman -s + dh_installchangelogs -s + dh_installdebconf -s + dh_strip -s + dh_link -s + dh_compress -s + dh_installcron -s + dh_installlogrotate -s + dh_fixperms -s + for package in libgraflib1 libgrafx11-1 libkernlib1 \ + libmathlib2 libpacklib-lesstif1 libpacklib1 ; do \ + dh_makeshlibs -p$${package}-gfortran ; \ + done + dh_shlibdeps -s -lshlib + dh_installdeb -s + dh_gencontrol -s + dh_md5sums -s + dh_builddeb -s + +binary-indep: install-indep + dh_testdir + dh_testroot + dh_install -i + dh_installdocs -i + dh_installexamples -i + dh_installman -i + dh_installchangelogs -i + dh_link -i + dh_compress -i -X.dat -X.kumac -X.F -X.sh + + # Fudge metapackage docs a little bit for efficiency: + for package in cernlib cernlib-core cernlib-core-dev cernlib-extras \ + cernlib-base-dev ; do \ + rm -rf debian/$$package/usr/share/doc/$$package ; \ + ln -sf cernlib-base debian/$$package/usr/share/doc/$$package ; \ + done + + # Override inane lintian error description-starts-with-package-name + # for cernlib metapackage + mkdir -p debian/cernlib/usr/share/lintian/overrides && \ + echo "cernlib: description-starts-with-package-name" > \ + debian/cernlib/usr/share/lintian/overrides/cernlib + + dh_fixperms -i + chmod a+x debian/cernlib-base/usr/share/doc/cernlib-base/examples/*.sh + chmod a+x debian/cernlib-base-dev/usr/share/cernlib/remove-deadpool + dh_installdeb -i + dh_gencontrol -i + dh_md5sums -i + dh_builddeb -i + +binary: binary-indep binary-arch + +clean: update-po +update-po: + debconf-updatepo + +.PHONY: install-arch-local binary binary-indep binary-arch clean update-po + --- cernlib-2006.dfsg.2.orig/debian/README.source +++ cernlib-2006.dfsg.2/debian/README.source @@ -0,0 +1,52 @@ +Options supported by CERNLIB's debian/rules in $DEB_BUILD_OPTIONS: + + noopt: Compile everything with no optimization, i.e. -O0. The default + is to compile at -O2 or -O3 for almost all files. + nostrip: Do not strip debugging information from the binaries and libraries. + ifort: Compile with Intel's icc and ifort (formerly ifc) compilers, not + gcc and gfortran. You must first set and export $LD_LIBRARY_PATH, + or edit /etc/ld.so.conf and run ldconfig, such that the Intel + library libimf.so is in the library runtime search path. You also + need to have first installed versions of BLAS and LAPACK compiled + with ifort. This option has not been fully tested. + gfortran: This option used to force compiling with the new GNU FORTRAN + compiler, gfortran. This is now the default compiler so the + option is no longer meaningful. Note, it is no longer easily + possible to build using the old GNU FORTRAN compiler (g77). + +Targets supported by CERNLIB's debian/rules: + + help: Output this text (found in debian/README.source). + get-orig-source: Recreate the tarballs in the "upstream" directory and + build a new orig.tar.gz file in the ".." dir after removing + non-free files/directories listed in debian/deadpool.txt. + unpack: Expand the upstream tarballs into a subdir "src" of the + current dir. + patched, patch: (These are synonyms.) Apply Debian patches to the unpacked + source code. After this target has been called, any + additional edits to the source code will be preserved when + running "fakeroot debian/rules binary". + unpatch: De-apply Debian patches without deleting unpacked source. + build, clean, etc: Standard Policy-required targets. + +It may be of interest to describe some of the contents of the debian directory: + + add-ons: Non Debian-specific additions to CERNLIB, including such + things as man pages, Autoconf macros, X11 application defaults, + a master Makefile, and a rewritten "cernlib" dependency script. + + control.d: Fragments of the debian/control file. It is regenerated from + these snippets by "debian/rules clean". + + debhelper: Files for debhelper tools, kept here so things are tidier. + These are symlinked from the main debian directory at build + time by "debian/rules install-common", and the symlinks are + removed by "debian/rules clean". + + lintian: Lintian overrides. + + patches: Debian patches to CERNLIB source in dpatch format. (See + debian/patches/README as there are some weird things here.) + + po: Translations of the Debconf templates for the pawserv package. + --- cernlib-2006.dfsg.2.orig/debian/control +++ cernlib-2006.dfsg.2/debian/control @@ -0,0 +1,475 @@ +Source: cernlib +Maintainer: Kevin B. McCarty +Standards-Version: 3.8.1 +Priority: optional +Section: science +Homepage: http://cernlib.web.cern.ch/cernlib/ +Build-Depends: po-debconf, dpkg-dev (>= 1.13.19), dpatch (>= 2.0.9), patch, mawk | gawk, xutils-dev, debhelper (>= 5.0.0), gfortran (>= 4:4.3), cfortran (>= 4.4-10), x11proto-core-dev, libxt-dev, libx11-dev, lesstif2-dev, libblas-dev, liblapack-dev + +Package: cernlib-base-dev +Architecture: all +Section: devel +Depends: cernlib-base (= ${source:Version}), ${misc:Depends} +Replaces: cernlib-base (<< 2005.dfsg-6) +Conflicts: libcojets1-dev, libgeant1-dev, libherwig59-dev, libisajet758-dev, libkuipx11-1-dev, libmathlib1-dev, libpaw1-dev, libpdflib804-dev, libphtools1-dev, blas2-dev, lapack2-dev +Description: CERNLIB data analysis suite - dependencies checking script + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This package includes the "cernlib" script that lists the command-line options + needed for linking against CERNLIB libraries. The script has been rewritten + from the upstream version to calculate dependencies recursively. Also + included are a contributed set of Autoconf macros to test for CERNLIB + libraries, and a set of Imake macros to allow CERNLIB modules to be built + out-of-tree. + +Package: cernlib-base +Architecture: all +Section: devel +Depends: ${misc:Depends} +Suggests: vim-addon-manager +Description: CERNLIB data analysis suite - common files + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This package includes miscellaneous architecture-independent files useful + for CERNLIB libraries and programs, including an example script that can + generate a skeleton CERNLIB directory structure and Vim syntax highlighting + macros for KUIPC CDF files and PAW "kumac" macro files. + +Package: cernlib-core-dev +Architecture: all +Section: devel +Depends: cernlib-base (= ${source:Version}), cernlib-base-dev, libgraflib1-dev, libgrafx11-1-dev, libkernlib1-dev, libpacklib-lesstif1-dev, libmathlib2-dev, libpacklib1-dev, libpawlib2-dev, libpawlib-lesstif3-dev, kuipc, dzedit, nypatchy, ${misc:Depends} +Description: CERNLIB data analysis suite - core development files + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This metapackage provides the header files and static libraries needed + by developers using the CERN libraries and not specifically interested in high + energy physics. It also provides the CERNLIB development tools: DZedit, + KUIPC, and the Nypatchy family of programs. CERNLIB analysis programs may be + obtained by installing the cernlib-core metapackage. + +Package: cernlib-core +Architecture: all +Section: science +Depends: cernlib-base (= ${source:Version}), kxterm, paw++, paw, paw-common, paw-demos, ${misc:Depends} +Description: CERNLIB data analysis suite - main libraries and programs + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This metapackage provides the libraries and analysis tools (e.g. PAW) likely + to be wanted by most users of the CERN libraries who are not interested + specifically in high energy physics. It does not provide development + libraries or tools; those may be obtained by installing the cernlib-core-dev + metapackage or individual lib*-dev packages. + +Package: cernlib-extras +Architecture: all +Priority: extra +Section: science +Depends: cernlib-base (= ${source:Version}), pawserv, zftp, ${misc:Depends} +Description: CERNLIB data analysis suite - extra programs + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This metapackage provides a few additional CERNLIB programs not included + in any other CERNLIB package. Very few people are likely to be + interested in them; currently they include zftp, pawserv and zserv. + The latter two programs run as daemons through inetd and may + raise concerns about the system's security. + . + Installing this package along with the 'cernlib' metapackage will supply + a complete set of all CERNLIB programs and libraries, except for those + not included in Debian due to licensing reasons. + +Package: cernlib +Architecture: all +Section: science +Depends: cernlib-base (= ${source:Version}), cernlib-core, cernlib-core-dev, cernlib-montecarlo, geant321-doc, geant321, ${misc:Depends} +Description: CERNLIB data analysis suite - general use metapackage + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This metapackage provides almost all of the programs and libraries contained + in CERNLIB. Most people will likely want only a subset of these. A few + extra CERNLIB programs, not of interest to many people, may be obtained via + the cernlib-extras metapackage. + +Package: dzedit +Architecture: any +Section: devel +Depends: ${shlibs:Depends}, ${misc:Depends} +Recommends: cernlib-base-dev, libpacklib1-dev +Description: CERNLIB data analysis suite - ZEBRA documentation editor + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + DZedit is an interactive interface to the DZDOC (ZEBRA documentation) system + developed at CERN. ZEBRA, part of the Packlib library, allows the creation + of complex data structures in the FORTRAN 77 language; the DZDOC system + helps to generate and maintain documentation for ZEBRA data structures. + +Package: kuipc +Architecture: any +Section: devel +Depends: ${shlibs:Depends}, cernlib-base, ${misc:Depends} +Recommends: cernlib-base-dev, libpacklib1-dev +Suggests: libpacklib-lesstif1-dev +Description: CERNLIB data analysis suite - KUIP compiler + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + KUIPC, the Kit for a User Interface Package Compiler, is a tool to simplify + the writing of a program's user interface code. It takes + a Command Definition File (CDF) as input, which describes the + commands to be understood by the program, and outputs C or FORTRAN code that + makes the appropriate function calls to set up the user interface. This + code can then be compiled and linked with the rest of the program. Since + the generated code uses KUIP routines, the program must also be linked + against the Packlib library that contains them. + . + KUIPC is no longer actively developed, so aside from its use in the build + process of CERNLIB, it is of mainly historical interest. + +Package: kxterm +Architecture: any +Section: science +Depends: ${shlibs:Depends}, cernlib-base, ${misc:Depends} +Description: CERNLIB data analysis suite - KUIP terminal emulator + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + KXterm is a terminal emulator which combines the best features from + the (now defunct) Apollo DM pads (like: input and transcript + pads, automatic file backup of transcript pad, string search in pads, + etc.) and the Korn shell emacs-style command line editing and command + line recall mechanism. It can support the command-line interface + of various CERNLIB applications. + +Package: libgraflib1-dev +Architecture: any +Section: libdevel +Depends: libgraflib1-gfortran (= ${binary:Version}), libgrafx11-1-dev (= ${binary:Version}), ${misc:Depends} +Description: CERNLIB data analysis suite - graphical library (development files) + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The graflib library includes the HPLOT and DZDOC systems. HPLOT is a + graphing facility intended to produce drawings and slides of histograms + (and other data) of a quality suitable to talks and publications. DZDOC + provides a method of viewing CERNLIB's ZEBRA data structures. + . + This package includes a static version of graflib, as well as C and FORTRAN + header files. + +Package: libgraflib1-gfortran +Architecture: any +Section: libs +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: CERNLIB data analysis suite - graphical library + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The graflib library includes the HPLOT and DZDOC systems. HPLOT is a + graphing facility intended to produce drawings and slides of histograms + (and other data) of a quality suitable to talks and publications. DZDOC + provides a method of viewing CERNLIB's ZEBRA data structures. + . + In order to compile and link programs against this library, + you must also install the libgraflib1-dev package. + +Package: libgrafx11-1-dev +Architecture: any +Section: libdevel +Depends: libgrafx11-1-gfortran (= ${binary:Version}), libpacklib1-dev (= ${binary:Version}), libx11-dev (>= 4.3.0-3), ${misc:Depends} +Description: CERNLIB data analysis suite - interface to X11 and PostScript (development) + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This package includes a static version of libgrafX11, also known as HIGZ + (High-level Interface to Graphics and ZEBRA), an interface to the X Window + System. In addition to basic drawing functions, HIGZ includes a PostScript + interface. Also included are C and FORTRAN header files. + +Package: libgrafx11-1-gfortran +Architecture: any +Section: libs +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: CERNLIB data analysis suite - interface to X11 and PostScript + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This package includes libgrafX11, also known as HIGZ (High-level Interface + to Graphics and ZEBRA), an interface to the X Window System. In addition + to basic drawing functions, HIGZ includes a PostScript interface. + . + Note that in order to compile and link programs against this library, + you must also install the libgrafx11-1-dev package. + +Package: libkernlib1-dev +Architecture: any +Section: libdevel +Depends: libkernlib1-gfortran (= ${binary:Version}), cernlib-base-dev (>= 2006.dfsg.2-6), cfortran (>= 4.4-10), libc6-dev | libc-dev, ${misc:Depends} +Recommends: gfortran (>= 4:4.3) +Description: CERNLIB data analysis suite - core library of basic functions (development) + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The kernlib library contains a rather miscellaneous set of basic numerical, + bitwise, and system-dependent functions used by other CERN libraries and + programs. + . + This package includes the static version of kernlib, as well as + C and FORTRAN header files. + +Package: libkernlib1-gfortran +Architecture: any +Section: libs +Depends: ${shlibs:Depends}, cernlib-base, ${misc:Depends} +Description: CERNLIB data analysis suite - core library of basic functions + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The kernlib library contains a rather miscellaneous set of basic numerical, + bitwise, and system-dependent functions used by other CERN libraries and + programs. + . + Note that in order to compile and link programs against this library, you + must also install the libkernlib1-dev package. + +Package: libmathlib2-dev +Architecture: any +Section: libdevel +Depends: libblas-dev | libatlas-base-dev | libblas-3gf.so, liblapack-dev | libatlas-base-dev | liblapack-3gf.so, libmathlib2-gfortran (= ${binary:Version}), libkernlib1-dev (= ${binary:Version}), libpacklib1-dev (= ${binary:Version}), cfortran (>= 4.4-10), libc6-dev | libc-dev, ${misc:Depends} +Conflicts: libmathlib1-dev, blas2-dev, lapack2-dev, refblas3-dev, lapack3-dev +Replaces: libmathlib1-dev +Description: CERNLIB data analysis suite - core mathematical library (development files) + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The mathlib library is a large set of mathematical routines used for purposes + such as evaluating special functions and integrals, numerically solving + algebraic and differential equations, performing matrix and vector operations, + running statistical tests, and generating random numbers in specified + distributions. + . + This package contains a static version of mathlib, as well + as C and FORTRAN header files. + +Package: libmathlib2-gfortran +Architecture: any +Section: libs +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: CERNLIB data analysis suite - core mathematical library + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The mathlib library is a large set of mathematical routines used for purposes + such as evaluating special functions and integrals, numerically solving + algebraic and differential equations, performing matrix and vector operations, + running statistical tests, and generating random numbers in specified + distributions. + . + In order to compile and link programs against this library, you + must also install the libmathlib2-dev package. + +Package: libpacklib-lesstif1-dev +Architecture: any +Section: libdevel +Depends: libpacklib-lesstif1-gfortran (= ${binary:Version}), libgrafx11-1-dev (= ${binary:Version}), lesstif2-dev, libxt-dev (>= 4.3.0-3), ${misc:Depends} +Conflicts: libkuipx11-1-dev, libpacklib1-lesstif-dev +Replaces: libpacklib1-lesstif-dev +Description: CERNLIB data analysis suite - core GUI library (development files) + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The packlib library includes a great deal of CERNLIB core functionality. + Best-known are probably the MINUIT function minimization routines, the + HBOOK histogramming routines, and KUIP (Kit for a User Interface Package). + Other subsystems include CSPACK, a set of client-server routines; FFREAD, + a format-free input processing system for FORTRAN; and ZEBRA, a data + structure management package. + . + This package includes the graphical functionality of KUIP, the CERNLIB + Kit for a User Interface Package. This library has been split off + from packlib so that the packlib packages need not depend upon + the X and Lesstif libraries. + . + This package was formerly named libkuipx11-1-dev. The text-based + functionality of KUIP can be found in the libpacklib1-dev package. + . + This package provides the static version of the libpacklib-lesstif library, + to be used for development. + +Package: libpacklib-lesstif1-gfortran +Architecture: any +Section: libs +Depends: ${shlibs:Depends}, ${misc:Depends} +Recommends: kxterm +Description: CERNLIB data analysis suite - core GUI library + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The packlib library includes a great deal of CERNLIB core functionality. + Best-known are probably the MINUIT function minimization routines, the + HBOOK histogramming routines, and KUIP (Kit for a User Interface Package). + Other subsystems include CSPACK, a set of client-server routines; FFREAD, + a format-free input processing system for FORTRAN; and ZEBRA, a data + structure management package. + . + This package includes the graphical functionality of KUIP, the CERNLIB + Kit for a User Interface Package. This library has been split off + from packlib so that the packlib packages need not depend upon + the X and Lesstif libraries. + . + This package was formerly named libkuipx11-1. The text-based functionality + of KUIP can be found in the libpacklib1-gfortran package. + . + Note that in order to compile and link programs against this library, you + must also install the libpacklib-lesstif1-dev package. + +Package: libpacklib1-dev +Architecture: any +Section: libdevel +Depends: libpacklib1-gfortran (= ${binary:Version}), libkernlib1-dev (= ${binary:Version}), cfortran (>= 4.4-10), libc6-dev | libc-dev, ${misc:Depends} +Suggests: libpacklib-lesstif1-dev +Description: CERNLIB data analysis suite - core library (development files) + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The packlib library includes a great deal of CERNLIB core functionality. + Best-known are probably the MINUIT function minimization routines, the + HBOOK histogramming routines, and KUIP (Kit for a User Interface Package). + Other subsystems include CSPACK, a set of client-server routines; FFREAD, + a format-free input processing system for FORTRAN; and ZEBRA, a data + structure management package. + . + This package contains a static version of packlib. Also included are C + and FORTRAN header files. Please note that the graphical functionality of + KUIP has been split out into the separate libpacklib-lesstif1-dev package + so that this package need not depend upon the X and Lesstif libraries. + +Package: libpacklib1-gfortran +Architecture: any +Section: libs +Depends: ${shlibs:Depends}, ${misc:Depends} +Suggests: xterm | x-terminal-emulator +Conflicts: paw-static (<= 2005.05.09-1), paw++-static (<= 2005.05.09-1) +Description: CERNLIB data analysis suite - core library + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The packlib library includes a great deal of CERNLIB core functionality. + Best-known are probably the MINUIT function minimization routines, the + HBOOK histogramming routines, and KUIP (Kit for a User Interface Package). + Other subsystems include CSPACK, a set of client-server routines; FFREAD, + a format-free input processing system for FORTRAN; and ZEBRA, a data + structure management package. + . + This package also includes kuesvr, the KUIP edit server program that permits + calling an editor asynchronously from within a KUIP-based program. + . + Please note that the graphical functionality of KUIP has been split out into + the separate libpacklib-lesstif1-gfortran package so that this package need + not depend upon the X libraries. In order to compile and link programs + against libpacklib, you must also install the libpacklib1-dev (and + maybe also the libpacklib-lesstif1-dev) package(s). + +Package: nypatchy +Architecture: any +Priority: optional +Section: devel +Depends: ${shlibs:Depends}, cernlib-base (>= 2006.dfsg.2-12), ${misc:Depends} +Recommends: gfortran | fortran-compiler, gcc | c-compiler +Description: CERNLIB data analysis suite - patch pre-processor for source code + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This package contains the Nypatchy family of programs, the successors to + Patchy and Ypatchy. These programs are intended for working with sets of + patches (for instance, for use on different machine architectures) meant to + be applied to a source code tree. The patch sets and common source code are + maintained as a single text-based Patchy Master file (PAM file). PAM files + can contain C, FORTRAN, or assembly code. + . + Nypatchy and related utilities can perform actions on a PAM file such as + updating it; comparing it to an older version; or outputting source code + suitable for input to a compiler, having selected some subset of available + patches to use. These utilities can be used interactively, or can run in + batch mode from a "cradle" file of commands. + . + While Nypatchy is still used in places, mainly high-energy physics, these + programs are no longer under active development. They are not recommended + for use in new projects. + +Package: pawserv +Architecture: any +Priority: extra +Section: net +Depends: ${shlibs:Depends}, ${misc:Depends}, netbase (>= 4.08), openbsd-inetd | inet-superserver +Recommends: cron +Suggests: logrotate +Conflicts: zserv, harden-servers +Replaces: zserv +Description: CERNLIB data analysis suite - distributed PAW and file transfer servers + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This package contains the server daemon for remote PAW clients. PAW + is the Physics Analysis Workstation, a graphical analysis program. + Included in the same binary is zserv, the server daemon for the ZFTP protocol; + zserv is a macro-extensible file transfer program which supports the + transfer of formatted, unformatted and ZEBRA RZ files (CMZ, HBOOK, etc.). + It is similar to a standard FTP daemon, although it listens on a different + port. Both servers operate through inetd. + . + Since these servers accept passwords in clear text and do not support SSL + or other encryption methods, you should probably only install this package + within a trusted LAN. It should be seen as equivalent to vanilla telnetd + in terms of security (or lack thereof). + +Package: zftp +Architecture: any +Priority: extra +Section: net +Depends: ${shlibs:Depends}, netbase (>= 4.08), ${misc:Depends} +Description: CERNLIB data analysis suite - file transfer program + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + ZFTP is a macro-extensible file transfer program which supports the + transfer of formatted, unformatted and ZEBRA RZ files (CMZ, HBOOK, etc.). + It provides a common interface on all systems and avoids the problems of + file format conversion that occur when transferring CERNLIB files + between different architectures. + . + Except for the special treatment of CERNLIB files and use of a different port, + zftp is very similar to an FTP client. Unless you are already familiar with + this program, it will almost certainly be useless to you. + --- cernlib-2006.dfsg.2.orig/debian/cernlib-debian.mk +++ cernlib-2006.dfsg.2/debian/cernlib-debian.mk @@ -0,0 +1,210 @@ +export DH_ALWAYS_EXCLUDE=CVS +export LC_COLLATE=C +export DEB_BUILD_ARCH ?= $(shell dpkg-architecture -qDEB_BUILD_ARCH) +export TEXMFVAR = $(CURDIR)/.texmf-var + +# current package version +DEBIAN_VERSION=$(strip $(shell \ + head -n 1 debian/changelog | cut -f 2 -d ' ' | tr -d '()')) + +# current upstream version (remove any epoch and Debian release number) +UPSTREAM_VERSION=$(shell echo $(DEBIAN_VERSION) | \ + sed -e 's/-[^-]*$$//' -e 's/^[^:]*://') + +# current upstream year +UPSTREAM_YEAR=2006 + +LOCAL_DEFINES = -DCERNLIB_VERBOSE -DCERNLIB_DEBIAN -DDEBIAN_VERSION=\"$(DEBIAN_VERSION)\" + +# location of patches +PATCHDIR = debian/patches +# location of non-Debian-specific add-ons +ADDONDIR = debian/add-ons + +# output a helpful usage message if this target is invoked +help: + @[ -e debian/README.source ] && cat debian/README.source || \ + echo "Sorry, no help for debian/rules available." + +# Download the current CERNLIB tarball to ".." +../$(UPSTREAM_YEAR)_src.tar.gz: + set -e ; \ + cd .. ; \ + wget --continue http://cernlib.web.cern.ch/cernlib/download/$(UPSTREAM_YEAR)_source/tar/$(@F) + +# Delete non-free files listed in debian/deadpool.txt from an unpacked +# source tree under upstream/ +remove-deadpool: + set -e ; \ + if [ -e $(ADDONDIR)/bin/remove-deadpool ] ; then \ + sh $(ADDONDIR)/bin/remove-deadpool ; \ + elif [ -x /usr/share/cernlib/remove-deadpool ] ; then \ + /usr/share/cernlib/remove-deadpool ; \ + fi ; \ + $(MAKE) -f debian/rules debian/copyright + +# Generate the orig.tar.gz file in the .. directory +../$(MY_NAME)_$(UPSTREAM_VERSION).orig.tar.gz: ../$(UPSTREAM_YEAR)_src.tar.gz + set -e ; \ + ( cd upstream && tar xzf ../$< ) ; \ + $(MAKE) -f debian/rules remove-deadpool ; \ + ( cd upstream ; \ + for module in $(MY_MODULES) ; do \ + tar czf src_$${module}.tar.gz $(UPSTREAM_YEAR)/src/$$module ; \ + done ) ; \ + fakeroot $(MAKE) -f debian/rules clean ; \ + mkdir -p ../$(MY_NAME)-$(UPSTREAM_VERSION).orig/upstream ; \ + cp -a upstream/*.tar.gz \ + ../$(MY_NAME)-$(UPSTREAM_VERSION).orig/upstream/ ; \ + cd .. ; tar czf $(@F) $(MY_NAME)-$(UPSTREAM_VERSION).orig ; \ + rm -r $(MY_NAME)-$(UPSTREAM_VERSION).orig + +# This target downloads source code from the CERNLIB web site +# and creates an orig.tar.gz file in the directory ".." +# Don't do this if you already have an orig.tar.gz for this source version, +# as the md5sums will not match! +# Requires "wget" package. +get-orig-source: ../$(MY_NAME)_$(UPSTREAM_VERSION).orig.tar.gz + +# Do not depend on build-indep so that buildd's don't needlessly run +# build-indep target. +build: build-arch + +Makefile: $(ADDONDIR)/Makefile + cp -f $(ADDONDIR)/Makefile . + +unpack: Makefile + dh_testdir + + # Check that the debian/control that would be autogenerated + # matches the existing one. If not, fail out. + $(MAKE) -f debian/rules debian/control.new + [ -s debian/control ] || exit 1 + [ -s debian/control.new ] || exit 1 + [ -z "`diff debian/control debian/control.new`" ] || exit 1 + + $(MAKE) prefix=/usr mandir=/usr/share/man sysconfdir=/etc \ + LOCAL_DEFINES='$(LOCAL_DEFINES)' stampdir/configure-stamp + +# Dpatch stuff +DPATCH_STAMPFN = stampdir/patch-stamp +${DPATCH_STAMPFN}: unpack +include /usr/share/dpatch/dpatch.make + +patched: patch +build-arch: patch + dh_testdir + # create local LaTeX cache dir + mkdir -p .texmf-var + # force use of system cfortran.h since we Build-Depend upon it + -mv -f src/include/cfortran/cfortran.h \ + src/include/cfortran/cfortran.h.disabled + $(MAKE) prefix=/usr mandir=/usr/share/man sysconfdir=/etc \ + LOCAL_DEFINES='$(LOCAL_DEFINES)' cernlib-arch +ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) + # run test suite if not disabled by DEB_BUILD_OPTIONS + if [ -z "$$LD_LIBRARY_PATH" ] ; then \ + export LD_LIBRARY_PATH="$(CURDIR)/shlib" ; \ + else \ + export LD_LIBRARY_PATH="$${LD_LIBRARY_PATH}:$(CURDIR)/shlib" ; \ + fi ; \ + $(MAKE) prefix=/usr mandir=/usr/share/man sysconfdir=/etc \ + LOCAL_DEFINES='$(LOCAL_DEFINES)' cernlib-test +endif + +build-indep: patch + dh_testdir + # create local LaTeX cache dir + mkdir -p .texmf-var + $(MAKE) prefix=/usr mandir=/usr/share/man sysconfdir=/etc \ + LOCAL_DEFINES='$(LOCAL_DEFINES)' cernlib-indep + +unpatch-clean: + # Move this back so reverse patch doesn't fail + -mv -f src/include/cfortran/cfortran.h.disabled \ + src/include/cfortran/cfortran.h + +unpatch: unpatch-clean + +clean: Makefile + dh_testdir + dh_testroot + @if ! $(MAKE) -f debian/rules unpatch ; then \ + echo ; \ + echo "The last patch listed above failed to de-apply. To" ; \ + echo "inspect the situation, hit Ctrl+C within 10 seconds." ; \ + for i in `seq 10 -1 1` ; do \ + echo -n "$$i " ; sleep 1 ; \ + done ; \ + echo ; \ + rm -rf debian/patched debian/patches/00list ; \ + fi + $(MAKE) prefix=/usr clean + rm -f Makefile $(ADDONDIR)/bin/kuipc + rm -f debian/control.new + rm -rf upstream/200? + rm -rf debian/tmp/ + -find . -name higz_windows.dat -o -name last.kumac \ + -o -name last.kumacold -o -name paw.metafile | xargs rm -f + -rm -rf lib*.txt libdeps/ bindeps/ # clean up output of makedeplist + -rm -rf .texmf-var # clean up TeX font cache + dh_clean + # Remove symlinks to debhelper snippets: + find debian -maxdepth 1 -type l | xargs rm -f + # Regenerate debian/patches/00list: + cd $(PATCHDIR) && ls -1 *.dpatch > 00list + # Make sure scripts are executable (but not READMEs): + -chmod a+x $(ADDONDIR)/bin/[a-z]* + -chmod a+x $(ADDONDIR)/scripts/[a-z]* + +debian/control.new: $(wildcard debian/control.d/*.control) + cat $^ > $@ + +debian/control: debian/control.new + cp -f $< $@ + +debian/copyright: debian/copyright.in debian/deadpool.txt + # Stick a list of removed files at the end of debian/copyright + grep -v DEADPOOL_LIST_GOES_HERE debian/copyright.in > $@ + sed -e 's/#.*//g' -e '/^[[:space:]]*$$/d' debian/deadpool.txt | \ + sort | uniq >> $@ + +install-common: + # Set up debhelper links. + cd debian ; for file in debhelper/* ; do \ + ln -sf $$file ; \ + done + dh_testdir + dh_testroot + dh_clean -k + +# target to install arch-dependent files +install-arch: install-common build-arch + dh_installdirs -s + mkdir -p debian/tmp/etc/logrotate.d + $(MAKE) DESTDIR="$(CURDIR)/debian/tmp" prefix=/usr \ + mandir=/usr/share/man sysconfdir=/etc install-arch + debian/rules install-arch-local + +install-arch-local: + +# target to install arch-independent files +install-indep: install-common build-indep + dh_installdirs -i + $(MAKE) DESTDIR="$(CURDIR)/debian/tmp" prefix=/usr \ + mandir=/usr/share/man sysconfdir=/etc install-indep + debian/rules install-indep-local + +install-indep-local: + +install: install-indep install-arch +binary-arch: install-arch +binary-indep: install-indep +binary: binary-indep binary-arch + +.PHONY: help get-orig-source remove-deadpool build build-indep build-arch \ + clean debian/control install install-common install-indep install-arch\ + install-indep-local install-arch-local \ + binary binary-indep binary-arch unpack patch unpatch setup \ + unpatch-clean + --- cernlib-2006.dfsg.2.orig/debian/changelog +++ cernlib-2006.dfsg.2/debian/changelog @@ -0,0 +1,966 @@ +cernlib (2006.dfsg.2-14.1) unstable; urgency=low + + * Non-maintainer upload. + * Fix broken patchsets causing FTBFS, patch provided by Davide Mancusi, + thanks! (Closes: #560561). + + -- Nico Golde Fri, 30 Jul 2010 13:24:00 +0200 + +cernlib (2006.dfsg.2-14) unstable; urgency=low + + * Acknowledge NMUs (closes: #501263, #501525, #491530). + Thanks Christian Perrier. + * Bump Standards-Version to 3.8.1. + - Support DEB_BUILD_OPTIONS=nocheck in debian/add-ons/cernlib.mk. + - Add ${misc:Depends} to debian/control Depends for all binary packages. + * Other minor changes to debian/add-ons/cernlib.mk necessary for building + on non-Debian systems; thanks Marco Tangaro for finding them. + * New (sort of) patch 113: Resurrect a small part of this patch to fix a + minor PostScript issue. Thanks Angelo Graziosi for the bug report and + testing. + * Revised patch 304: Restore optimization to -O2 on mips/mipsel now that + gfortran optimization bug is fixed. + * Revised patch 307: Update included cfortran.h, cfortran.doc to current + version of Debian package, 4.4-13. + * Debconf translation: + - Updated es.po, thanks to Francisco Javier Cuadrado + (closes: #507757). + + -- Kevin B. McCarty Fri, 13 Mar 2009 04:51:23 +0100 + +cernlib (2006.dfsg.2-13.2) unstable; urgency=low + + * Non-maintainer upload with maintainer's agreement to fix more + l10n issues. + * Debconf translations: + - Brazilian Portuguese. Closes: #501263 + - Dutch. Closes: #501525 + + -- Christian Perrier Sun, 12 Oct 2008 08:34:43 +0200 + +cernlib (2006.dfsg.2-13.1) unstable; urgency=low + + * Non-maintainer upload. + * Fix pending l10n issues. Debconf translations: + - Swedish. Closes: #491530 + + -- Christian Perrier Mon, 06 Oct 2008 07:16:09 +0200 + +cernlib (2006.dfsg.2-13) unstable; urgency=low + + * Patch 304: Make sure to detect mips and armeb architectures correctly + in config/linux.cf. + * Patch 304: Reduce mips/mipsel optimization to zero (-O0) to work around + gfortran-4.3 SIN/COS bug, http://gcc.gnu.org/PR35662 . I have verified + (many thanks to Thiemo Seufer for use of his machine) that CERNLIB + finally passes test suites on mips in this configuration, and so + presumably also mipsel. + + -- Kevin B. McCarty Fri, 21 Mar 2008 20:03:28 -0700 + +cernlib (2006.dfsg.2-12) unstable; urgency=medium + + * Patch 304: Reduce optimization to -O1 on mips, mipsel to try to fix + numerous serious test suite errors. Bump urgency to medium since this + will (with luck) fix FTBFS. + * debian/add-ons/Makefile, debian/control.d/nypatchy.control, + debian/debhelper/nypatchy.{install,links}, debian/add-ons/Makefile: + Also build an nypatchy package. Requires these patches to source code + (thanks to Patrice Dumas for patches 126 and 127): + - New patch 124: Add Imakefile for bootstrap directory p5boot, and + touch up p5boot.sh bootstrapping script. + - New patch 125: Fix creation of PLINAME in patchy Imakefile. + - New patch 126: Fix assorted compile flags, etc. in patchy build. + - New patch 127: Cause yexpand script to generate tempfiles in $PWD + rather than $HOME. + - Updated patch 321: Make fcasplit and nyshell print "gfortran" instead of + "f77" by default in scripts they generate. + * debian/add-ons/manpages/*: Fix unescaped hyphens in man page. Write some + manpages for nypatchy package. + + -- Kevin B. McCarty Thu, 13 Mar 2008 09:49:06 -0700 + +cernlib (2006.dfsg.2-11) unstable; urgency=low + + * Patch 102: Add kernlib/kerngen/tcgen/tlsc.F to the list of files not + to compile optimized, due to mis-compiled code at -O2 on ia64 (bug filed + against gfortran-4.3 as #466948). Should fix FTBFS on ia64. + * New patch 217: Force mathlib/gen test program "gent" to exit non-zero + if any individual test fails, so I don't have to inspect test suite + output manually for test failures in buildd logs. + + -- Kevin B. McCarty Fri, 22 Feb 2008 12:25:14 -0800 + +cernlib (2006.dfsg.2-10) unstable; urgency=low + + * Patch 304: Adjustments to compiler flags to solve various problems: + - Do not build with -funroll-loops, in order to work around compiler + bugs: ICE on arm at kernlib/kerngen/tcgen/ranecu.F (filed as #466791) + and bad code on ia64 at mathlib/gen/tests/c201s.F (filed as #466911). + - Build with -fno-range-check option to gfortran to ignore arithmetic + overflow compiler errors, as g77 does by default (closes: #466834), + and therefore... + * Patch 321: Revert work-around for that purpose from release -8. + + -- Kevin B. McCarty Thu, 21 Feb 2008 11:54:27 -0800 + +cernlib (2006.dfsg.2-9) unstable; urgency=low + + * Upload gfortran-transitioned CERNLIB to unstable. + + -- Kevin B. McCarty Tue, 19 Feb 2008 10:12:32 -0800 + +cernlib (2006.dfsg.2-8) experimental; urgency=low + + * Patch 321: In kernlib/kerngen/tcgens/lnxppcgs/{ubunch.F,ublow.F}, work + around gfortran overflow error in initializing 4-byte integer with + "data mask1/x'ff000000'/" statement. N.B. these files are only compiled + by big-endian architectures, so this change is irrelevant to i386, etc. + * debian/debhelper/cernlib-base.README.debian: Update to mention the new + montecarlo-data binary package and the soversion bump for libisajet. + * debian/control.d/libmathlib2-dev.control: Revert back to depending on + libblas-dev and liblapack-dev by default, as the libatlas-base-dev + package (and friends) does not ship liblapack.so and libblas.so symlinks + where the compiler and linker will see them automatically. + * debian/control.d/libmathlib2-dev.control: Also Conflict against + g77-based libdevel packages refblas3-dev and lapack3-dev. + * debian/NEWS: s/unstable/experimental/ in 2006.dfsg.2-7 NEWS entry to fix + newly introduced lintian warning. + + -- Kevin B. McCarty Fri, 15 Feb 2008 09:54:57 -0800 + +cernlib (2006.dfsg.2-7) experimental; urgency=low + + * Tweak dependencies and build-deps to use new libblas-dev and + liblapack-dev packages; also gfortran 4.3. No longer force installation + of BLAS and LAPACK reference implementations instead of ATLAS at + install time, only at build time. + + * Patch updates to fix new issues that arose with gfortran 4.3: + - Patch 216: Fix compiler error "Result of LGAMMA overflows its kind" on + mathlib GEN test 310 by using the CERNLIB log-gamma function, not + the glibc one. Also force use of CERNLIB version of log-gamma function + internally elsewhere in mathlib. + - Patch 321: Fix ZEBRA test zebfz8 read error at EOF, caused by a + change in the definition of gfortran error codes between 4.2 and 4.3. + For some inexplicable reason, the error code returned by IOSTAT=xxx in + a ZEBRA call to READ at EOF is not the expected (-1), but is instead + the value defined as (LIB)ERROR_BAD_OPTION (3 in gfortran-4.2, 5002 in + gfortran-4.3) in libgfortran.h. + + * Make packages installable in parallel with old g77-based runtime libs + (though NOT with old libdevel packages): + - Patch 605, debian/rules: Move kuesvr executable and man page elsewhere + so that libpacklib1-gfortran doesn't overwrite libpacklib1 files. + - Patch 800, debian/add-ons/cernlib.mk, debian/debhelper/lib*.install: + Add Make variable $(TOOL_NAME) to make shared lib filenames (as well + as sonames) include "_gfortran" string. + - debian/control.d/lib*.control: Remove relevant Conflicts/Replaces that + were introduced in previous revision. + - debian/NEWS: Edit most recent entry appropriately. + + * Slight update to debian/README.64-bit to mention the -fno-automatic flag. + * Change install-cernlib-dirs.sh to link to Monte Carlo data files in + /usr/share/montecarlo-data (data files will be moved there in next + upload of mclibs to experimental). + * Debconf translation: + - Updated ja.po, thanks to Hideki Yamane + (closes: #463710) + + -- Kevin B. McCarty Mon, 4 Feb 2008 09:11:38 -0800 + +cernlib (2006.dfsg.2-6) experimental; urgency=low + + * Experimental upload implementing gfortran transition: + - debian/add-ons/cernlib.mk: Make gfortran the default compiler. + - debian/add-ons/cernlib.mk: Add "_gfortran" string into sonames to keep + binary compatibility with Fedora gfortran-compiled CERNLIB packages. + - debian/add-ons/bin/cernlib.in: s/-lg2c/-lgfortran/g + - debian/NEWS: Warn that recompilation of user programs will be required. + - debian/README.amd64: Remove this file as it applies only to g77. + - debian/control.d/*, debian/debhelper/*, debian/copyright*, debian/rules: + Rename library packages for gfortran transition. While renaming + things, rename libpacklib1-lesstif{,-dev} to + libpacklib-lesstif1-{gfortran,dev} to get the soversion in the right + place in the package name. Add Conflicts and Replaces on old library + packages. Bump Build-Depends and Depends of devel packages to the first + versions of dependent packages built with gfortran. + + * gfortran-related source code patch updates and revisions: + - Patch 102: Build gamma64.F with no compiler optimization; it fails + the mathlib test suite (GEN test #66, for E408) at -O3 in gfortran-4.2. + (Note, even when compiled optimized, the "failure" is caused by an + error in the 16th significant base-10 digit of a calculation involving + results returned from the DGAMMA function; I suspect mathlib authors + were overly optimistic about the precision of "double" variables.) + - Patch 215: Removed; hope the g77 compiler bug on ia64 that prompted this + patch isn't also present and needing to be worked around in gfortran. + - New patch 216: Force use of CERNLIB gamma function within mathlib, not + glibc's gamma function, which may be insufficiently precise; see, e.g., + the thread started at http://gcc.gnu.org/ml/fortran/2007-10/msg00096.html + (This is not an issue now, but may be in the future when gfortran-4.3 + becomes the default compiler.) + - Patch 304: Make sure that gfortran is passed the -fno-automatic flag. + - Patch 321: Rename MYGETARG to KERNLIBGETARG, and comment out GETARG + itself, to make name clashes much less likely. Use KERNLIBGETARG + instead of _gfortran_getarg_i4 in kfor.h in case gfortran name mangling + changes in the future. + + * Support ppc64 architecture: + - Patch 211: No change needed; Patrice Dumas finds that like amd64, ppc64 + puts static variables and local functions in memory under the 32-bit + barrier. + - Patch 304: Update Imake.cf to the version from xutils-dev 1:7.2.ds2-1 + (but keeping the local change of darwin.cf -> MacOSX.cf). Revise + linux.cf to match, supplying -DCERNLIB_QMLXIA64 flag in the event + of Ppc64Architecture being defined. + + * debian/cernlib-debian.mk: Remove section that would by default delete + the build tree of object files after stampdir/cernlib-{arch,indep}-stamp + were created. This could have caused a race condition when used with + parallel make. Conserving disk space on buildds is no longer as + important with CERN libs split into four separate source packages. + * debian/README.source: Remove mention of the now-useless "keepbuild" + $DEB_BUILD_OPTIONS flag. + + * More lintian fixes: + - debian/control.d/0base.control: Bump Standards-Version to 3.7.3. + - debian/patches/*: Make sure all patches have a "## DP:" comment header. + - debian/rules: Add lintian override for 'cernlib' metapackage lintian + error in short description "description-starts-with-package-name". + + * Miscellaneous minor tweaks: + - debian/cernlib-debian.mk: Define CERNLIB_VERBOSE to get more output + from some test suite programs. + - debian/control.d/0base.control: Add Homepage field. + - debian/copyright*: Mention the switch to GPL v3. + - debian/debhelper/kxterm.menu: Deleted; it is not useful to have kxterm + in the menu without an application to drive it. + - debian/debhelper/cernlib-base.README.debian: Explain how to turn on + Vim syntax highlighting for KUIPC and kumacs files, now that it is + no longer automatic. + - debian/*: Uniformly capitalize CERNLIB and CERN, following usage on + upstream's web page (but without editing old changelog or NEWS entries). + + * debian/rules: Add rule to call debconf-updatepo explicitly from + debian/rules clean target. + * debian/control.d/*: debian/control reviewed by the debian-l10n-english + team as part of the Smith Review Project. (Partly closes: #454572) + A few additional tweaks made. + * debian/pawserv.templates: Debconf template reviewed by the debian-l10n- + english team as part of the Smith Review Project. (closes the rest of + #454572) + * New or updated debconf translations following the template update: + - Updated cs.po, thanks to Miroslav Kure + (closes: #457682) + - Updated de.po, thanks to Erik Schanze + (closes: #457798) + - Updated fr.po, thanks to Christian Perrier + (closes: #455775) + - Updated gl.po, thanks to Jacobo Tarrio + (closes: #455776) + - Updated pt.po, thanks to Miguel Figueiredo + (closes: #458597) + - Updated vi.po, thanks to Clytie Siddall + (closes: #457302) + - New eu.po, thanks to Aitor Ibañez + (closes: #457829) + - New fi.po, thanks to Esko Arajärvi + (closes: #455962) + - New it.po, thanks to Luca Monducci + (closes: #456552) + - New nb.po, thanks to Bjørn Steensrud + (closes: #455794) + - New ru.po, thanks to Yuri Kozlov + (closes: #434232) + + -- Kevin B. McCarty Fri, 11 Jan 2008 10:03:47 -0800 + +cernlib (2006.dfsg.2-5) unstable; urgency=low + + * debian/add-ons/cernlib.mk: Fix brown paper bag bug. Do not accidentally + create a file named *.dpatch when there are no files in a source tree + whose names match the glob debian/patches/*.dpatch.in + This bug went undetected for a long time because all cernlib-related + source packages included at least one file matching this glob. + + -- Kevin B. McCarty Fri, 04 Jan 2008 20:30:00 +0000 + +cernlib (2006.dfsg.2-4) unstable; urgency=low + + * debian/add-ons/bin/cernlib.in: Try to link -lblas and -llapack always, + not -llapack-3 or -lblas-3. Should ensure that we only ever are linked + against refblas3-dev and lapack3-dev libraries even if ATLAS is also + installed on the system. (Users can still override this by supplying + -L/path/to/atlas/libs to the compiler command line before the cernlib + script output.) This ought to fix recent FTBFS on mips/mipsel buildds. + + * Revised patch 214: Also change DET variable in TSING() to DOUBLE PRECISION + instead of REAL in kernnum test suite. Should fix alignment problem + causing bus error and FTBFS on ia64 buildd in kernnum f011 test. + + * New patch 215: Failure of kernnum f004 test in TMXXX() on ia64 seems to + be caused by g77 compiler bug. This hack should work around it. Likely + this patch will not be needed after the switch to gfortran. + + -- Kevin B. McCarty Thu, 03 Jan 2008 01:55:42 +0000 + +cernlib (2006.dfsg.2-3) unstable; urgency=low + + * Revised patch 211: Add IPTRDIFF() function on 64-bit systems to safely + evaluate difference in memory locations of two FORTRAN variables, as long + as they do not differ by more than 2^31 - 1 bytes, even if they are + outside the 32-bit addressable memory range. + * New patch 212: Explicitly print out test program exit codes. + * New patch 213, many thanks to Patrice Dumas: Fix Imakefiles for building + test programs. + * New patch 214: Make kernnum functions and test suite more robust on + 64-bit systems. + * Revised patch 803: Add an Imake macro to link a program statically + against Cern libraries. + * New patch 807: Compile certain test programs statically linked to Cern + libraries on 64-bit systems. + * debian/cernlib-debian.mk, debian/add-ons/cernlib.mk, + debian/add-ons/Makefile: Enable test suite during build. It's necessary + to see how broken the gfortran transition makes things, but first we + need a baseline with g77 for comparison, hence this upload. + + -- Kevin B. McCarty Sat, 15 Dec 2007 01:08:50 +0000 + +cernlib (2006.dfsg.2-2) unstable; urgency=low + + * debian/control.d/cernlib-core-dev.control: Remove libpawlib2-lesstif-dev + alternative from metapackage dependency now that libpawlib-lesstif3-dev + is in Sid. + + * debian/debhelper/cernlib-base.README.debian: + s/libpawlib2-lesstif/libpawlib-lesstif3/g + + * debian/README.64-bit: Update to reflect that COMIS should now work + on ia64 and alpha as well as amd64 when statically linked. + + * debian/README.amd64: Update reference to g77/gfortran -f{no-,}f2c flag + to gfortran--doc, as g77-3.4-doc no longer exists, and note + that the package is in non-free. + + -- Kevin B. McCarty Thu, 10 May 2007 17:45:59 -0400 + +cernlib (2006.dfsg.2-1) unstable; urgency=low + + * debian/cernlib-debian.mk: Fix typo in orig.tar.gz generation rule + (closes: #416008). Hence rebuild orig.tar.gz. Thanks to Angelo + Graziosi for noticing the problem. + + * debian/README.Debian-source: Write file describing how the orig.tar.gz is + created, to comply with Developers' Reference section 6.7.8.2. + + * debian/control.d/cernlib-core-dev.control: Depend on or'ed combination of + libpawlib2-lesstif-dev with forthcoming new package + libpawlib-lesstif3-dev, since the soversions for libpawlib-lesstif (and + hence also libgeant321) will need to be bumped due to an upcoming purge of + obsolete embedded third-party code from the library. Once the new + libraries are in unstable I'll remove the libpawlib2-lesstif-dev + dependency, but in the meantime the cernlib-core-dev metapackage will + still be installable. + + * debian/control.d/pawserv.control: Add Depends on openbsd-inetd | + inet-superserver, as post-Etch, netbase no longer provides or depends + on an inetd. + + * New patch 122: Fix minor syntax errors in CDF files (text accidentally + commented out by leading '*' characters) that caused a few phrases to + be missing from program online help texts. + + * Changes supplied or requested by Patrice Dumas for + use in Fedora Cernlib packages: + - debian/add-ons/Makefile, debian/add-ons/bin/cernlib.in: Add the + potential to have the cernlib script look for Cernlib libraries + in a specific versioned directory. [Does not affect Debian builds.] + - New patch 123: Declare memmove() in packlib/kuip/kuip/kstring.h + only if it is not already defined as a macro. [Does not affect + Debian builds.] + - Patch 321: Revert to use of Harald Vogt's solution for supplying a + getarg wrapper function to gfortran; upstream's solution hard-codes + gfortran name mangling, and may break in the future. + - Patch 800: Shared library target Imake macros updated for consistency; + added the possibility to include the compiler name in the library + sonames for FORTRAN compiler transitions. [Does not affect Debian + builds.] + - Patch 805: Restore implementation of PERRORF() in kernlib [by deleting + the part of this patch that kept it from being compiled]. I have + no idea why I commented it out of the build long ago, and it seems + it cannot possibly do any harm. Hence, bump libkernlib shlibdeps + in debian/rules. + + -- Kevin B. McCarty Thu, 26 Apr 2007 01:34:16 -0400 + +cernlib (2006.dfsg-1) experimental; urgency=low + + * New upstream release. + - Upstream has this time produced a single monolithic tarball. + . debian/cernlib-debian.mk: Fix get-orig-source target accordingly. + . debian/README.source, debian/copyright.in: Update. + - Upstream now ships a bootstrap method of building nypatchy. At + some point (not just yet) we will build a package from this, so + incorporate p5boot and patchy modules in the source package. + - Upstream now ships a man page for the cernlib script. We continue + using a custom version of the script, but may as well ship their + man page at least in the source package. + - debian/debhelper/lib*.install: s/2005/2006/ for lib filenames + - Patch 113: Upstream fixed ipdef.F; delete this patch. + - Patch 115: Upstream fixed rsrtnt64.F in a more elegant way, so this + patch is now much simpler; merely ensure that weird jump + assignments are avoided on ia64/g77 as well as with gfortran. + - Patch 202: Resync. + - Patch 304: Merge in upstream's changes to Imake.cf, linux.cf, + linux-lp64.cf. + - Patch 314: Upstream fixed kmfile.c; delete this patch. + - Patch 315: Upstream fixed c327m.F, c342m.F, log.c, tcpaw.c, systems.c, + ksys.h, and added MacOSX.tmpl. Merge in upstream's versions + of MacOSX.cf, MacOSX.rules. + - Patch 318: Upstream fixed tcpaw.c; resync iconwidget.c. + - Patch 321: Upstream fixed wpsipg.F, cfstft.F, v107z0.inc, iucomh.F, + getarg.F, ublow.F, ubunch.F, rndm.F, fzdaeof.inc, q_and.inc, + q_andor.inc, q_jbit.inc, q_jbyt.inc, q_jbytet.inc, + q_jbytor.inc, q_mbytet.inc, q_mbytor.inc, q_or.inc, + q_sbit.inc, q_sbit0.inc, q_sbit1.inc, q_sbyt.inc, + q_shift.inc, q_shiftl.inc, q_shiftr.inc, q_xor.inc. + Upstream did *not* see a need to change klnx.h; hence remove + our patch for that file. Remove patch to linux.cf which + is now incorporated in patch 304. + + * Patch 803: Add "-u" to the invocation of "cernlib" used to create kxterm, + and revert CernlibFortranProgramTarget to CernlibCcProgramTarget, + ensuring that the kxterm binary is not linked against extraneous libs. + + * debian/control.d/*, debian/debhelper/cernlib-base*: Split out a new + cernlib-base-dev package that contains the "cernlib" library dependency + script and Autoconf and Imake macros. People not using the CERN + libraries for development need none of these. Adjust control information + accordingly so that only devel packages pull in cernlib-base-dev. + Also install remove-deadpool and gmake scripts into /usr/share/cernlib + so that other Cernlib source packages don't need to carry around their + own copies (risking divergence). Add $(datadir)/cernlib to $PATH + in debian/add-ons/cernlib.mk so these scripts will be found automatically. + + * debian/add-ons/vim/*, debian/debhelper/cernlib-base.install, + debian/control.d/cernlib-base.control: Add Vim macros for syntax + highlighting of KUIPC Command Definition Files (CDFs) and KUIP/PAW + macro (.kumac) files. Emacs macros will be accepted as well but I + won't be the one to write them. + + * debian/add-ons/bin/cernlib.in: Add output of -lXbae -lXm -lXaw for + "cernlib -G Motif pawlib", preparing for plans to make libpawlib-lesstif.so + use external libXaw and libXbae. [N.B. -lXm *must* come before -lXaw.] + + * debian/control.d/cernlib{-core-dev,}.control: Remove explicit + dependencies of cernlib metapackage upon geant321-data, libgeant321-* + as the geant321 package pulls them in automatically. + + * debian/control.d/pawserv.control: Use ${misc:Depends} instead of + explicit debconf dependency. + + * debian/control.d/libpacklib1-lesstif.control: Recommend kxterm. + + * debian/add-ons/Makefile: Add missing target dependency + "cernlib-setup-local: cernlib-scripts"; prevents a failure in running + "debian/rules binary-indep". + + * debian/rules: Remove stray reference to libpawlib2-lesstif package, + no longer in this source package. Use -s instead of -a for debhelper + flags in binary-arch. + + * debian/add-ons/bin/install-cernlib-dirs.sh: Use 2006 for $CERN_LEVEL + instead of 2005. Also generate symlinks /cern/2006deb/src/include and + /cern/2006deb/src/config. Add a --year flag to permit uninstallation + (or installation) of a Cernlib directory skeleton with a different year. + Add symlinks from /usr/lib to GEANT and Monte Carlo data files + xsneut95.dat, cojets.dat, eurodec.dat, isajet.dat. + + * debian/cernlib-debian.mk: + - Set $(TEXMFVAR) to $(CURDIR)/.texmf-var as requested by the Debian + LaTeX maintainers. Take care of creating and removing this directory + in the appropriate targets. Cernlib modules (mclibs) that use LaTeX + to build documents will now behave correctly when built using this + version of the cernlib-base package. + - No longer fiddle with separate directories for control file fragments + on different arches; this is no longer needed as we now use -s instead + of -a flags for debhelper in binary-arch. + - As a result, we should no longer need to fiddle with debian/control at + build time. Instead, check that an autogenerated debian/control.new is + the same as the existing debian/control; if not, error out of the build. + + * debian/changelog: Since the changelog is getting quite large, move + entries older than a year or so into debian/changelog.Debian.old. + Install this only into the cernlib-base binary package. + + * Remove empty directory debian/patches/optional from source package. + + * Debconf translation: gl.po, thanks to Jacobo Tarrio . + (closes: #409621) + + -- Kevin B. McCarty Tue, 6 Mar 2007 11:13:47 -0500 + +cernlib (2005.dfsg-5) unstable; urgency=low + + * Patch 211: Have chkloc() print 64-bit error message about pointers not in + the data segment to stderr rather than stdout. Merge small corrections to + hgnt2.F, hgntf.F from Harald Vogt. + + * debian/NEWS: Remove the NEWS entry for version 2005.05.09.dfsg-1, about + the purge of FLUKA code from the Geant 3.21 library. This NEWS entry is + now provided in the geant321 source package instead. + + * debian/README.64-bit: Reference new example in the libpawlib2-dev package. + + * debian/control.d/cernlib-core.control: Explicitly Depend upon + "refblas3 | libblas.so.3, lapack3 | liblapack.so.3" so that only one of + the sets {refblas3, lapack3} or {atlas3-base} will be pulled in by + dependencies, preferring the former if neither is installed. + + * debian/debhelper/cernlib-base.TODO: Update description of post-Etch plans. + + -- Kevin B. McCarty Wed, 27 Sep 2006 15:45:30 -0400 + +cernlib (2005.dfsg-4) unstable; urgency=low + + * Patch 211: Added fixes for hcreatem.F and hmapm.F on 64-bit arches from + Harald Vogt. + + * debian/control.d/*: Substitute deprecated ${Source-Version} with + ${source:Version} for arch:all packages, and with ${binary:Version} for + lib*-dev packages depending on lib* packages. Hence Build-Depend upon + dpkg-dev (>= 1.13.19). + + -- Kevin B. McCarty Tue, 19 Sep 2006 14:10:17 -0400 + +cernlib (2005.dfsg-3) unstable; urgency=low + + * Patch 321: Fix FTBFS on some architectures, apparently caused by an + error in the recent changes to packlib/kernlib/kerngen/kerngen/klnx.h. + + * Patch 211: Fix FTBFS with gfortran (it doesn't like "%LOC" instead of + "LOC"). + + -- Kevin B. McCarty Thu, 7 Sep 2006 16:41:50 -0400 + +cernlib (2005.dfsg-2) unstable; urgency=low + + * The "Harald Vogt, second edition" release. + Based on work of Harald Vogt to improve 64-bit support and + add gfortran support, released as a monolithic patch on 2006-07-20. + + * Patch 115: In addition to unwrapping the loop, change "1" to "&" for line + continuation indicators in rsrtnt64.F. + + * New patch 119: Fix a large number of compiler warnings, mainly resulting + from failure to #include system header files or misuse of NULL vs. 0. + + * New patch 120: Fix use of gets() in kuipcc.c. + + * New patch 121: Fix off-by-one bug in c209m.F mathlib test case. + + * Patch 211: 64-bit system support greatly expanded and updated. + New function chkloc() added to kernlib; shlib dependency bumped in + debian/rules. + + * New patch 321, debian/add-ons/cernlib.mk: Support gfortran in build + infrastructure (but not yet in binary .debs). To build Cernlib with + gfortran, put "gfortran" in $DEB_BUILD_OPTIONS. Note that you will first + need to hack the file debian/add-ons/bin/cernlib.in to replace "-lg2c" + with "-lgfortran" (line 98) for this to work properly. You will also need + to have installed versions of liblapack.so and libblas.so that were + compiled with gfortran (the versions in Debian have been built with g77). + + * Delete no-longer-used patches 901 and 902 in debian/patches/optional + that were only relevant to Monte Carlo libs (now in a separate source + package). + + -- Kevin B. McCarty Wed, 6 Sep 2006 19:01:46 -0400 + +cernlib (2005.dfsg-1) unstable; urgency=low + + * Rebuild source package since the mclibs, geant321, and pawlib tarballs + have each been split off into their own source packages. + (Now use "2005.dfsg" for the sake of having a shorter version number. + Since digits precede letters in dpkg's version ordering, no epoch is + necessary.) + + * Only the following binary packages are now generated from the cernlib + source package: + cernlib, cernlib-{base,core,core-dev,extras}, dzedit, kuipc, kxterm, + libgraflib1{,-dev}, libgrafx11-1{,-dev}, libkernlib1{,-dev}, + libmathlib2{,-dev}, libpacklib1{,-dev}, pawserv, zftp. + + * Also remove src_cmz and src_patchy tarballs from orig.tar.gz since + they are never used. + + * Remove netkit-inetd | xinetd dependency from pawserv package (and mention + of xinetd from the long description) since netbase already depends on the + default inetd and should continue to do so through the release of Etch. + (closes: #382678) + + * Debconf translations + - Portuguese: Hugo Peixoto, submitted by Rui Branco (closes: #378884) + + -- Kevin B. McCarty Mon, 14 Aug 2006 13:35:57 -0400 + +cernlib (2005.05.09.dfsg-9) unstable; urgency=low + + * Prepare to split the Cernlib source package apart in the near future by + making it possible to build individual source modules out-of-tree. + - debian/add-ons/Makefile, debian/debhelper/cernlib-base.install, + debian/control.d/cernlib-base.control: Install various Imake macros to + /usr/share/cernlib/config/ in the cernlib-base binary package. This way + they only have to be patched once, not once per future source package. + - debian/rules, debian/cernlib-debian.mk: Separate out most of the + debian/rules targets into a separate file, and install that file to + /usr/share/cernlib/ in the cernlib-base binary package. + - debian/add-ons/Makefile, debian/add-ons/cernlib.mk: Similar separation + of targets for the non-Debian-specific Makefile. Install cernlib.mk to + /usr/share/cernlib/ as well. + - Therefore, in debian/patches/000-unpack.sh.dpatch, call "make" with + "prefix=/usr" argument. + + * Patch 600: Delete. We need to set site-specific options in a different + way in order to make things work for out-of-tree source modules. Instead, + put these options into host.def in the stampdir/configure-stamp target + of debian/add-ons/Makefile. Create a new patch 600 that causes host.def + to be read at configure time. + + * Patch 900: Delete. Again, do this better by putting the option into + host.def as appropriate. New patch 320 puts a conditional test into + the kxterm Imakefile checking for whether or not ifort is being used. + Resync patch 803. Correct erroneous ifort compiler flag + (s/-no_formain/-nofor_main/) in both places, thanks to Eduardo Ariel + Menendez P . + + * debian/cernlib-debian.mk, debian/add-ons/Makefile: Utilize a $(DESTDIR) + variable following the usual convention. + + * debian/debhelper/{libcojets2,libeurodec1,libisajet758-2}.dirs: Stop + generating unused directory /usr/share/montecarlo-data. + + * debian/debhelper/libpawlib2-dev.README.debian: Correct the path of a + file referenced in this document (s/pawlib1/libpawlib2/). + + -- Kevin B. McCarty Sun, 16 Jul 2006 13:06:55 -0400 + +cernlib (2005.05.09.dfsg-8) unstable; urgency=low + + * debian/rules: Ensure LC_COLLATE=C when regenerating copyright and + control files, so that the output is repeatable under different locales. + + * New patch 118: Rename common blocks in d510si.inc: X -> D510X and + DF -> D510DF to work around the most obvious instance (but not fix the + general case) of #374978, "Name clashes possible between PAW user + variables and system library functions". These are only used internally + by mathlib, so no soname change is required. + + * Patch 302: Clean up after empty /tmp/comis* directories in paw wrapper + script. + + * Patch 602: Improved so that Cernlib programs invoke x-terminal-emulator, + sensible-{editor,pager} instead of xterm, vi, view in a few more places + when CERNLIB_DEBIAN is defined. + + * debian/{rules,add-ons/misc/paw++.desktop,debhelper/paw++.install}: Add + paw++ desktop file taken from patches.ubuntu.com (slightly edited) to + paw++ package, and run dh_desktop -a in debian/rules accordingly. + + -- Kevin B. McCarty Wed, 28 Jun 2006 10:15:19 -0400 + +cernlib (2005.05.09.dfsg-7) unstable; urgency=low + + * Patch 805: More dummy functions and subroutines added to mathlib, + permitting more "real" functions that depend upon them to be built in + as well, thanks to the research of Mattias Ellert. Specifically: + - USER1, USER2, GETCO dummies permit adding back EPDCHN EPDE1 EPDECC + in the likewise-named FORTRAN files. + - FCN dummy permits adding back FCN1 and MINSQ in the likewise-named + FORTRAN files, and LINSQ QLINSQ D508R1 D508R2 in linsq.F. + - FUNCT dummy permits adding back ARITHM ERRORF and SGZ in the + likewise-named FORTRAN files, and FUMILI LIKELM in fumili.F. + - For consistency, the mathlib dummy routines have all been consolidated + into a single file in the patch, src/mathlib/gen/d/dummy.c, so + src/mathlib/gen/divon/dfun.F has been scrapped. + + * Related changes: + - Patch 112: No longer comment out prototype for QLINSQ() in gen.h. + - debian/rules: Bump mathlib shlibs again. + + * Patch 307: Update copies of src/cfortran/cfortran.{doc,h} from newest + Debian cfortran package, version 4.4-10. + + * Minor cleanups in documentation and control files: + - debian/control.d/0base.control: Remove versioned build-dependency + "gcc-4.0 (>= 4.0.2-4) | gcc (<< 4:4.0)"; it's useless clutter since none + of the gcc versions currently in Sarge/Etch/Sid suffer from #325050. + - debian/control.d/libgeant321-2.control: Add Recommends on kxterm. + - debian/control.d/cernlib-core-dev.control: Change Section to devel. + - debian/copyright: Remove mention of libmathlib2 README.Debian file that + no longer exists (this was overlooked in the previous release). + - debian/README.{64-bit,amd64}: Update Harald Vogt's web page URL. + - debian/debhelper/cernlib-base.README.debian: Mention + README.{64-bit,amd64}. + + -- Kevin B. McCarty Thu, 18 May 2006 05:45:44 -0400 + +cernlib (2005.05.09.dfsg-6) unstable; urgency=low + + * patch 805: Add in dummy dfun.F file to the divon section of mathlib, + after learning from Mattias Ellert that + this dfun.F has nothing to do with the dfun.F in the lepto library. + Thanks to him for supplying a fixed patch. + - This permits us to compile in all divon functions, including + RANGEN() and PARTN() that have been missed (thanks to Mattias and to + Nils Pickert , respectively, for noting their absence). + - patch 112: No longer comment out prototype for FUN() in gen.h. + - debian/rules: Bump shlib version for mathlib due to added functions. + - debian/debhelper/libmathlib2{,-dev}.README.debian: Remove these files + since their contents, based on my previous inaccurate understanding, + are erroneous. + + * debian/add-ons/bin/install-cernlib-dirs.sh, + debian/debhelper/cernlib-base.{README.debian,examples}: Write and + document a script that can install a /cern directory skeleton in order + to improve compatibility with badly written third-party software. + Script is installed under the cernlib-base doc directory, not into + /usr/sbin, so that people won't be tempted to run it out of curiosity. + + * debian/control.d/0base.control: + - s/xutils/xutils-dev/ in Build-Depends after X package split. + - Bump Standards-Version to 3.7.2 (no changes). + + -- Kevin B. McCarty Wed, 10 May 2006 12:15:35 -0400 + +cernlib (2005.05.09.dfsg-5) unstable; urgency=low + + * debian/control.d/lib{packlib1-lesstif,grafx11-1}-dev.control: Remove + obsolete dependencies on xlibs-dev (>> 4.1.0). + + * patch 211: + - add special case for alpha as well as ia64. PAW will likely still + be broken on alpha, but hopefully no longer quite as broken. + - dirty hacks to src/pawlib/comis/deccc/cscal[dir].c to use the right + pointer values in COMIS on alpha/ia64 systems. This makes calls to + compiled user routines work in PAW in simple cases. + - compile temporary shlibs dlopened by PAW with -g in case someone wants + to run the debugger on them. + + -- Kevin B. McCarty Fri, 24 Mar 2006 16:26:29 -0500 + +cernlib (2005.05.09.dfsg-4) unstable; urgency=low + + * debian/control.d/0base.control: Forgot to include epoch in versioned + build dependency on gcc defaults package. Change to read + "gcc-4.0 (>= 4.0.2-4) | gcc (<< 4:4.0)". + + * patch 211: Delete the part of the patch that modifies src/scripts/cernlib + since upstream's cernlib script is never used anyway. + + * patch 307: Synced with current version of cfortran.h from cfortran + package (4.4-9). + + * new patch 319: Hideous workaround (try to run imake twice) for + non-deterministic imake segfaults on hppa. If second run of imake + fails, abort immediately (upstream didn't have "set -e" in their shell + script). + - Resynced patch 800. + + * patch 902: Add dummy install.shlib target in m68k patch to isajet + Imakefile to prevent FTBFS. + + * debian/add-ons/misc/cernlib.m4: New version of Cernlib Autoconf macros + from Patrice Dumas. + + * debian/debhelper/*.README.debian: Update the APT URLs for obtaining + unofficial Monte Carlo installation packages from borex.princeton.edu + to people.debian.org. Remove the relevant reminder from the + cernlib-base.TODO file. Refer in cernlib-base.README.debian to the new + Cernlib on Debian URL, http://people.debian.org/~kmccarty/cernlib/ . + + -- Kevin B. McCarty Mon, 2 Jan 2006 10:42:22 -0500 + +cernlib (2005.05.09.dfsg-3) unstable; urgency=low + + * debian/add-ons/Makefile: Remove "|| true" from shared-lib generating + shell script snippet calling "$(MAKE) install.shlib" subprocesses. + + * Patches to fix FTBFS on Itanium: + - New patch 115-rsrtnt64-goto-outer-block: Patch from Patrice Dumas + to fix spaghetti code in src/mathlib/gen/b/rsrtnt64.F. + - New patch 116-fix-fconc64-spaghetti-code to work around linker breakage + with recent binutils on ia64, caused by assignment to goto labels in + src/mathlib/gen/c/fconc64.F. + + * New patch 117-fix-optimizer-bug-in-gphot from Harald Vogt + to work around compiler optimization problem in src/geant321/gphys/gphot.F. + + * Revised and enabled patch 211-fix-comis-on-amd64 from Harald + Vogt to make PAW and Paw++ work better on 64-bit platforms. Some + small modifications made from the initial patch preserving the dynamic + library ABI and making it unnecessary to use g77's -fno-f2c flag. + Shlib versions (but not sonames) bumped in debian/rules for libpawlib and + libpacklib. + - patches 315, 701: Resynced. + - patch 307: Synced with current version of cfortran.h from cfortran + package (4.4-8). + - Build-Depend on cfortran (>= 4.4-8) to work around GCC bug 15397. + See the cfortran 4.4-8 changelog and NEWS.Debian for more information. + - debian/README.{64-bit,amd64}: Discuss in more detail potential problems + on 64-bit platforms. + + * Added additional patch 211-fix-comis-on-ia64 to improve PAW usability on + Itanium. This builds on the work already done by Harald Vogt, using + information obtained from _IA-64 Linux Kernel: Design and Implementation_ + (Mosberger and Eranian) and from tests run on merulo.debian.org. + This is far from a complete solution; PAW is still quite broken on ia64. + + * Give up on having dynamically linked PAW work on 64-bit arches. Get rid + of the paw-static and paw++-static packages; PAW and Paw++ will be + dynamically linked on 32-bit arches and statically linked against Cern + libs on 64-bit arches. + - debian/copyright{,.in}: paw*-static -> paw* + - debian/rules: Copy working versions of paw++ and pawX11 into the install + tree (dynamically linked versions if that works, static otherwise). + - debian/control.d/paw{,++}-static.control: These are now dummy Arch: all + packages depending upon paw{,++} for smooth upgrades. + - debian/debhelper/paw{,++}.links: Remove unneeded man-page links... + - debian/{debhelper,lintian}/paw*-static.*: ... and *-static package + debhelper files. + - debian/debhelper/paw{,++}{,-static}.preinst: Remove alternatives links + in new preinsts. Delete old postinst/prerms that implemented the links. + - debian/rules: Re-add man page and binary links for + paw{X11,++}.{dynamic,static} only as appropriate, for backwards + compatibility. + - debian/control.d/paw*, debian/debhelper/paw*.links: Move pawX11.1.gz + and paw++.1.gz from paw-common into paw and paw++ packages. + Add Replaces: paw-common (<< 2005.05.09.dfsg-3) for paw and paw++. + Add direct Depends: g77 for paw and paw++ (they may be statically linked + so we can't rely on the indirect Depends via libpawlib2). + + * Patch 302: Revise to have the "paw" script in the paw-common package + exit with a sane error message if it can't find pawX11 or paw++ binaries. + - debian/control.d/paw-common.control: Change the paw-common package's + Depends: paw++ | paw-binary to a Recommends: paw | paw-binary to + prevent the circular dependency paw, paw++ => paw-common => paw, paw++. + + * debian/add-ons/bin/cernlib.in: Take advantage of the Linux linker's + intelligence, and don't have the cernlib script output any of + "-lXp -lXext -lSM -lICE -lblas" when run on Linux if not specifically + requested. None of those libraries contain symbols needed by any + Cernlib library or binary; they are only indirect dependencies + required when linking 100% statically. This reduces the number of + spurious package dependencies somewhat. + + -- Kevin B. McCarty Mon, 12 Dec 2005 13:47:00 -0500 + +cernlib (2005.05.09.dfsg-2) unstable; urgency=low + + * The file src/mclibs/isajet/isasusy/sszibf.F still breaks g77 on m68k, + even at -O0. To purge non-free GEANT-FLUKA code from the archive, + we need to force this version into unstable for all arches, even m68k: + - new patch 902, debian/add-ons/Makefile: Add a dpatch to remove isajet + from the list of mclibs to compile if $(DEB_BUILD_ARCH) = m68k. + - debian/control.d/cernlib-montecarlo.control: Only Recommend + libisajet758-2-dev, don't Depend upon it. + - debian/control.d/libisajet*.control: Moved into debian/control.d/no-m68k + - debian/rules: Hacked to look for arch-specific control file snippets. + - debian/add-ons/Makefile: Small fix to convert the new format of + gcc -dumpmachine (e.g. "m68k-linux-gnu") to a machine architecture. + + * No other changes. My apologies to the non-m68k buildds. + + -- Kevin B. McCarty Mon, 5 Dec 2005 12:39:19 -0500 + +cernlib (2005.05.09.dfsg-1) unstable; urgency=low + + * Removed the directories src/geant321/peanut and src/geant321/block, + as well as a number of include files in src/geant321/geant321 + (see debian/deadpool.txt for details). These are all part of GEANT-FLUKA + (they were previously overlooked in the first purge of FLUKA code) and + therefore cannot be included in Debian. In addition, removed the + directory src/geant321/fiface and the files + src/geant321/miface/{gfmdis.F,gfmfin.F} as they are useless without FLUKA. + (closes: #340433) + - Necessitates repacking the orig.tar.gz ("new" upstream version). + - Files added to debian/deadpool.txt. + - Patch 001-fix-missing-fluka: revised to skip these directories as + well as src/geant321/fluka. + . Patches 109, 203, 802, 806 re-synced. + - Patch 003-geant-dummy-functions: to keep ABI compatibility of the + library, we have to add in dummy functions and COMMON blocks to replace + the removed code. + - debian/rules: Bump the shlib version required by code built against + libgeant321-2, as the dummy COMMON blocks may in some cases be slightly + larger than the real ones. (Does not break the ABI, as FORTRAN COMMON + blocks are always global and never nested or passed between functions.) + - New script debian/add-ons/scripts/libcomp to help check that the dummy + common blocks are the right sizes. + - Additional removals noted in the README.Debian files for the affected + binary packages: geant321, libgeant321-2, libgeant321-2-dev. + - debian/NEWS: Comment on the new round of code removal. + + * Some additional changes to existing patches suggested by Patrice Dumas + in the process of creating Cernlib RPMs: + - patch 102: Add src/mathlib/gen/d/old506.F to the list of files to + compile without optimization; it breaks g77 3.2 otherwise. + - patch 207: Have COMIS create temporary shared library files with g77, + not gcc. (Resync patch 315.) + - patch 210: Change to . + - patch 300: Prefer the FORTRAN version of lenocc() in + src/packlib/kernlib/kerngen/tcgen/lenocc.F to the C version + in src/packlib/kernlib/kerngen/ccgen/lenocc.c ; it isn't + clear that the C version is 64-bit safe. + - patch 800: Use "$(FCLINK)" to create shared libs, not "gcc". + - patch 802: Fixes to the top-level Imakefile, even though it isn't used + in the Debian package build. For consistency, add + InstallSharedLibSubdirs(), and re-order the directory build + order to match that in debian/add-ons/Makefile. + - patch 804: #include "comis/mdpool.h" or .inc consistently, using a new + dpatch shell script 804-link-to-comis-includes.sh to link + src/pawlib/comis/comis into src/include/. + + * New patch 114-install-scripts-properly: convert InstallProgram to + InstallNamedProg in src/scripts/Imakefile, to avoid the build trying + to strip shell scripts. (This is not currently used in the Debian build + but is included for consistency with Patrice Dumas's RPMs.) + + * debian/add-ons/bin/cernlib.in: Revised to take into account modern + X directory layouts; patch from Patrice Dumas. + - /usr/X11R6/lib will eventually no longer exist (as will be the case + with modular X.org libs, where X libs go into /usr/lib) + - Check also for /usr/X11R6/lib64 directory + - Remove long-obsolete /usr/X386/lib and /usr/X11/lib directories + - Merge Linux and Darwin cases, which are now essentially identical + + * In files defining dummy functions (patches 003, 309, 310), protect + printed-out references to Debian-specific files by surrounding them with + "#if defined (CERNLIB_DEBIAN)" ... "#endif". Update the referenced + directories (e.g. libphtools1-dev -> libphtools2-dev). + + * Bug #325050 in gcc-4.0 (which broke ntuple handling in PAW) has been fixed: + - Build-Depend on gcc-4.0 (>= 4.0.2-4) | gcc (<< 4.0) to ensure that + we compile with a gcc not having that bug. (closes: #324902) + - Revert hacks in debian/{control,rules} that forced build with gcc-3.4. + + * debian/debhelper/paw{,++}{,-static}.README.debian: Update reference to + X FAQ about Debconf configuration of X config files with altered md5sums. + + * Update maintainer email everywhere in debian/ tree. + + * debian/rules, debian/copyright{,.in}: Add a rule to update the copyright + file with the current list of files in debian/deadpool.txt. + + * debian/rules, debian/compat: Update to debhelper compat version 5. + + * Debconf translations + - Spanish: César Gómez Martín (closes: #334390) + - Swedish: Daniel Nylander (closes: #332334) + + * For previous changelog entries, please see the file changelog.Debian.old + in the cernlib-base binary package. + + -- Kevin B. McCarty Fri, 2 Dec 2005 11:57:11 -0500 + --- cernlib-2006.dfsg.2.orig/debian/README.64-bit +++ cernlib-2006.dfsg.2/debian/README.64-bit @@ -0,0 +1,47 @@ +64-bit specific CERNLIB issues +------------------------------ + +If you are intending to use CERN libraries on a 64-bit platform (such as +the Itanium [ia64], Alpha, or AMD64 / EM64t [amd64] Debian architectures), +you should be aware of some potential problems. + +CERNLIB was never designed to run on machines where the size of a pointer +is 64 bits. The code implicitly assumes that + sizeof(void *) == sizeof(int) == 4 +in many different places. The biggest culprits are the ZEBRA and COMIS sets +of routines in the packlib and pawlib libraries, respectively. This would be +difficult to fix without rewriting megabytes of FORTRAN source code. + +Harald Vogt has, however, succeeded in putting together enough workarounds +to permit PAW and Paw++ to run on 64-bit machines. These workarounds +are valid only when the entire set of code in a program's memory space can +be addressed by 32-bit values. This will generally be true for statically +linked programs, but not for dynamically linked ones. + +Hence, many of the CERN libraries on 64-bit machines may only work well when +linked against statically. Routines outside of ZEBRA and COMIS may be safe to +use if dynamically linked, but I would not bet money on it. Furthermore, you +will want to make sure that any variables used as parameters in COMIS routines +are within the program data segment, either by putting them in COMMON blocks +or by compiling the block of code in which the variable is declared with the +-fno-automatic flag of gfortran. (-fno-automatic used on FORTRAN code has the +same effect as declaring all local variables "static" would in C code.) See +the example program comis-64bit-example.F in the libpawlib2-dev package under +/usr/share/doc/libpawlib2-dev/examples, for instance. + +Static linking is the default behavior if you use the "cernlib" script when +linking, like this: + + # Should work everywhere: + gfortran -o myprogram myprogram.F `cernlib -G Motif pawlib` + +but not if you directly tell the library names to the compiler, like this: + + # Possibly results in a non-working program on 64-bit! + gfortran -o myprogram myprogram.F -lpawlib -lpacklib ... + +For more information, please see Harald Vogt's web page about CERNLIB ported +to 64-bit machines: + http://www-zeuthen.desy.de/linear_collider/cernlib/new/cernlib_2005.html + +-- Kevin McCarty , Wed, 8 Aug 2007 --- cernlib-2006.dfsg.2.orig/debian/add-ons/includelist.txt +++ cernlib-2006.dfsg.2/debian/add-ons/includelist.txt @@ -0,0 +1,18 @@ +graflib/dzdoc/dzdoc +graflib/higz/higz +graflib/hplot/hplot +kernlib/kernbit/kernbit +kernlib/kerngen/kerngen +kernlib/kernnum/kernnum +mathlib/gen/gen +packlib/cspack/cspack +packlib/epio/epio +packlib/fatmen/fatmen +packlib/ffread/ffread +packlib/hbook/hbook +packlib/hepdb/hepdb +packlib/kapack/kapack +packlib/kuip/kuip +packlib/minuit/minuit +packlib/zbook/zbook +packlib/zebra/zebra --- cernlib-2006.dfsg.2.orig/debian/add-ons/Makefile +++ cernlib-2006.dfsg.2/debian/add-ons/Makefile @@ -0,0 +1,173 @@ +NEEDS_MAKEFILE = cfortran code_motif graflib kernlib mathlib packlib \ + p5boot patchy scripts + +# Order here is important! Packages that depend on other packages must be +# compiled later, or the linker risks picking up stuff in /usr/lib instead +# of $(CERN_SHLIBDIR). +LIB_PACKAGES = kernlib packlib mathlib graflib code_motif +BIN_PACKAGES = p5boot patchy packlib graflib +TEST_PACKAGES = kernlib packlib mathlib graflib + +include debian/add-ons/cernlib.mk + +KUIPC = $(CERN_BINDIR)/kuipc + +cernlib-setup-local: $(KUIPC) cernlib-scripts +cernlib-indep-local: cernlib-scripts + +$(KUIPC): + cd $(CERN_BUILDDIR) && $(MAKE) MAKEOVERRIDES= bin/kuipc + +# we want to use a completely rewritten cernlib script +cernlib-scripts: patch + set -e ; \ + mkdir -p $(CERN_BINDIR) ; \ + sed -e 's,@LIBPREFIX@,$(libdir),g' -e 's,@PREFIX@,$(prefix),g' \ + -e 's,@CERN@,$(prefix),g' -e 's,@VERSION@,.,g' \ + $(ADDONDIR)/bin/cernlib.in > $(CERN_BINDIR)/cernlib + # Request the appropriate Fortran library for the desired compiler +ifneq (,$(findstring ifort,$(DEB_BUILD_OPTIONS))) + sed -i -e 's/-lgfortran/-limf/' $(CERN_BINDIR)/cernlib +endif + chmod a+x $(CERN_BINDIR)/cernlib + +# target to install include files for development packages +install-includes: + install -d -m 0755 $(DESTDIR)$(includedir) + + # install them all (patching includes, e.g. #include "ksys.h" + # -> #include ) + for dir in `cat $(ADDONDIR)/includelist.txt` ; do \ + basedir=`basename $$dir` ; \ + rm -rf $(DESTDIR)$(includedir)/$$basedir ; \ + cp -Rp $(CVSCOSRC)/$$dir $(DESTDIR)$(includedir) ; \ + ls -1 $(DESTDIR)$(includedir)/$$basedir/* | \ + egrep -v '\.(h|inc)$$' | xargs rm -rf ; \ + for file in `ls -1 $(DESTDIR)$(includedir)/$$basedir/*` ; do \ + if [ -f $$file ] ; then \ + sed -e 's,^\([ ]*#[ ]*include\)[ ]*"\([^"/]*\)",\1 <'$$basedir/'\2>,g' \ + -e 's,^\([ ]*#[ ]*include\)[ ]*"\([^"]*\)",\1 <\2>,g' \ + -e 's,cfortran/,,g' \ + $$file > $$file.tmp ; \ + mv -f $$file.tmp $$file ; \ + fi ; \ + done ; \ + done + + # install cfortran.doc (if cfortran.h exists; for Debian packaging we + # deleted it earlier) + set -e ; \ + if [ -e $(CVSCOSRC)/cfortran/cfortran.h ] ; then \ + install -d -m 0755 $(DESTDIR)$(datadir)/doc/cfortran ; \ + install -p -m 0644 $(CVSCOSRC)/cfortran/cfortran.doc \ + $(DESTDIR)$(datadir)/doc/cfortran/ ; \ + fi + + # install still more include files + for header in cfortran comis cspack gen graflib hbook higz hplot \ + kernlib kuip minuit packlib zebra ; do \ + file="$(CVSCOSRC)/cfortran/$${header}.h" ; \ + [ -e "$$file" ] && \ + install -p -m 0644 "$$file" $(DESTDIR)$(includedir)/ || true ; \ + done + for car in fatmen hbook higz kuip zebra ; do \ + install -p -m 0644 $(CVSCOSRC)/car/$${car}.car \ + $(DESTDIR)$(includedir)/ ; \ + done + +# target to install files in arch-dependent packages +install-arch: install-includes + install -d -m 0755 $(DESTDIR)$(bindir) $(DESTDIR)$(sbindir) \ + $(DESTDIR)$(libdir) $(DESTDIR)$(datadir)/pixmaps \ + $(DESTDIR)$(sysconfdir)/X11/app-defaults \ + $(DESTDIR)$(man1dir) $(DESTDIR)$(man8dir) + + # rename some files that conflict with the cdbackup package + set -e ; \ + for file in backup make move serv ; do \ + [ -x $(CERN_BINDIR)/cd$$file ] && \ + mv $(CERN_BINDIR)/cd$$file $(CERN_BINDIR)/hep$$file || true ; \ + done + + # install binaries + for binary in dzedit dzeX11 fatback fatmen fatnew fatsend fatsrv \ + hepbackup hepdb hepmake hepmove hepserv kuesvr kuipc kxterm \ + fcasplit nycheck nydiff nyindex nylist nymerge nypatchy \ + nyshell nysynopt nytidy yexpand zftp ; do \ + install -p -m 0755 $(CERN_BINDIR)/$$binary \ + $(DESTDIR)$(bindir)/ ; \ + done + for binary in zserv ; do \ + install -p -m 0755 $(CERN_BINDIR)/$$binary \ + $(DESTDIR)$(sbindir)/ ; \ + done + [ -z "`diff $(DESTDIR)$(sbindir)/zserv $(CERN_BINDIR)/pawserv`" ] \ + && ln -sf zserv $(DESTDIR)$(sbindir)/pawserv \ + || install -p $(CERN_BINDIR)/pawserv $(DESTDIR)$(sbindir)/ + + # install libraries + install -p -m 0644 $(CERN_LIBDIR)/*.a $(DESTDIR)$(libdir)/ + # we go through the following rigmarole because "install" dereferences + # symlinks and older GNU versions of "cp" have inconsistent + # syntax for the short form of the --no-dereference flag + set -e ; \ + if [ -d $(CERN_SHLIBDIR) ] ; then \ + ( abslibdir="`cd $(DESTDIR)$(libdir)/ && pwd`" ; \ + cd $(CERN_SHLIBDIR)/ ; \ + for file in `ls | grep 'lib.*\..*\..*\.'` ; do \ + basename=`echo $$file | cut -f 1 -d .` ; \ + install -p -m 0644 $$file "$$abslibdir/" ; \ + for link in `ls $${basename}.* |grep -v 'lib.*\..*\..*\.'`; do \ + ln -sf $$file "$$abslibdir"/$$link ; \ + done ; \ + done ) ; \ + fi + + # install KXterm app-defaults + install -p -m 0644 $(ADDONDIR)/app-defaults/KXterm \ + $(DESTDIR)$(sysconfdir)/X11/app-defaults/ + + # install KXterm icon + install -p -m 0644 $(ADDONDIR)/icons/kxterm*.xpm \ + $(DESTDIR)$(datadir)/pixmaps/ + + # install man pages + for binary in dzedit dzeX11 kuesvr kuipc kxterm zftp \ + fcasplit nycheck nydiff nyindex nylist nymerge nypatchy \ + nyshell nysynopt nytidy yexpand ypatchy ; do \ + install -p -m 0644 $(ADDONDIR)/manpages/$$binary.1 \ + $(DESTDIR)$(man1dir)/ ; \ + done + for binary in pawserv zserv ; do \ + install -p -m 0644 $(ADDONDIR)/manpages/$$binary.8 \ + $(DESTDIR)$(man8dir)/ ; \ + done + +# target to install files in arch-independent packages +install-indep: + install -d -m 0755 $(DESTDIR)$(bindir) $(DESTDIR)$(datadir)/aclocal \ + $(DESTDIR)$(man1dir) $(DESTDIR)$(datadir)/cernlib \ + $(DESTDIR)$(datadir)/cernlib/config + + # Install scripts + man pages + install -p -m 0755 $(CERN_BINDIR)/cernlib $(DESTDIR)$(bindir)/ + install -p -m 0644 $(ADDONDIR)/manpages/cernlib.1 $(DESTDIR)$(man1dir)/ + + # Contributed Autoconf macros + install -p -m 0644 $(ADDONDIR)/misc/cernlib.m4 \ + $(DESTDIR)$(datadir)/aclocal/ + + # Imake config files + install -p -m 0644 $(CVSCOSRC)/config/* \ + $(DESTDIR)$(datadir)/cernlib/config/ + chmod a+x $(DESTDIR)$(datadir)/cernlib/config/imake_boot + + # Makefile fragment + install -p -m 0644 $(ADDONDIR)/cernlib.mk $(DESTDIR)$(datadir)/cernlib/ + + # gmake script + install -p -m 0755 $(ADDONDIR)/bin/gmake $(DESTDIR)$(datadir)/cernlib/ + +.PHONY: cernlib-setup-local cernlib-indep-local cernlib-scripts \ + install install-arch install-includes install-indep + --- cernlib-2006.dfsg.2.orig/debian/add-ons/cernlib.mk +++ cernlib-2006.dfsg.2/debian/add-ons/cernlib.mk @@ -0,0 +1,220 @@ +# Variables for installation directories, conforming to GNU standards +prefix = /usr/local +exec_prefix = $(prefix) +bindir = $(exec_prefix)/bin +sbindir = $(exec_prefix)/sbin +datadir = $(prefix)/share +sysconfdir = $(prefix)/etc +libdir = $(exec_prefix)/lib +includedir = $(prefix)/include +mandir = $(prefix)/man +man1dir = $(mandir)/man1 +man8dir = $(mandir)/man8 +srcdir = . +abssrcdir = $(strip $(shell cd $(srcdir) && pwd)) + +# Other variables important to CERNLIB compilation +export ARCH = $(strip $(shell uname -s)) +export CERN = $(shell pwd) +export CERN_LEVEL = $(strip $(shell \ + tar tzf $(abssrcdir)/upstream/src_Imakefile.tar.gz \ + | cut -d / -f 1)) +export CERN_ROOT = $(CERN) +export CVSCOSRC = $(CERN_ROOT)/src +export CERN_DOCDIR = $(CERN_ROOT)/doc +export CERN_BINDIR = $(CERN_ROOT)/bin +export CERN_LIBDIR = $(CERN_ROOT)/lib +export CERN_SHLIBDIR = $(CERN_ROOT)/shlib +export CERN_BUILDDIR = $(CERN_ROOT)/build + +export SHELL = /bin/sh +export PATCHDIR = $(abssrcdir)/debian/patches +export ADDONDIR = $(abssrcdir)/debian/add-ons +export LIB_SONAME = 1 +ifeq (,$(findstring ifort,$(DEB_BUILD_OPTIONS))) + export TOOL_SONAME = _gfortran + export TOOL_NAME = _gfortran +endif +export PATH := $(CERN_BINDIR):$(ADDONDIR)/bin:$(datadir)/cernlib:${PATH} +export INSTALL_OPTS ?= -s +export CC ?= gcc +export DEB_BUILD_ARCH ?= $(shell $(CC) -dumpmachine | \ + sed -e 's/-linux-gnu$$//' -e 's/-linux$$//') + +# make sure patches are applied in the right order: +export LANG = C +export LC_COLLATE = C + +all: cernlib-indep cernlib-arch cernlib-test + +cernlib-arch: stampdir/cernlib-arch-stamp +cernlib-indep: stampdir/cernlib-indep-stamp +cernlib-test: stampdir/cernlib-test-pass +gunzip: stampdir/gunzip-stamp +patch: stampdir/patch-stamp +install: install-indep install-arch + +stampdir/cernlib-arch-stamp: + [ -e stampdir/cernlib-arch-stamp ] || \ + $(MAKE) cernlib-libraries cernlib-programs cernlib-arch-local + mkdir -p stampdir + touch stampdir/cernlib-arch-stamp + +cernlib-arch-local: + +stampdir/cernlib-indep-stamp: + [ -e stampdir/cernlib-indep-stamp ] || \ + $(MAKE) cernlib-indep-local + mkdir -p stampdir + touch stampdir/cernlib-indep-stamp + +cernlib-indep-local: + +stampdir/gunzip-stamp: + if [ -d $(ADDONDIR)/bin ] ; then chmod a+x $(ADDONDIR)/bin/* ; fi + for x in $(abssrcdir)/upstream/src_*.tar.gz ; do tar xzf $$x ; done + # get rid of the needless extra directory whose name changes yearly + mv $(CERN)/$(CERN_LEVEL)/src $(CERN)/ + rmdir $(CERN)/$(CERN_LEVEL) + # get rid of the CVS directories + find $(CVSCOSRC)/ -name CVS | xargs rm -rf + + # symlink in config directory if not already there + set -e ; \ + if [ ! -d "$(CVSCOSRC)/config" ] ; then \ + if [ ! -d "$(datadir)/cernlib/config" ] ; then \ + echo "Cannot find required $(datadir)/cernlib/config!";\ + exit 1 ; \ + fi ; \ + mkdir $(CVSCOSRC)/config ; \ + for file in $(datadir)/cernlib/config/* ; do \ + ln -s $$file $(CVSCOSRC)/config/ ; \ + done ; \ + fi + + mkdir -p stampdir + touch stampdir/gunzip-stamp + +stampdir/configure-stamp: stampdir/gunzip-stamp + # Add various patches to the patch directory based on environment + # variable options + for patch in `ls -1 $(PATCHDIR)/*.dpatch.in 2> /dev/null`; do \ + sed -e 's,@PREFIX@,$(prefix),g' -e 's,@DATADIR@,$(datadir),g' \ + $$patch > $${patch%.in} ; \ + chmod a+x $${patch%.in} ; \ + done + + # Set other options in src/config/host.def + rm -f $(CVSCOSRC)/config/host.def + echo '#define CernlibLocalDefines $(LOCAL_DEFINES)' >> \ + $(CVSCOSRC)/config/host.def +ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) + echo '#define OptimizationLevel -O0' >> $(CVSCOSRC)/config/host.def +endif +ifneq (,$(findstring nostrip,$(DEB_BUILD_OPTIONS))) + echo '#define InstPgmFlags ' >> $(CVSCOSRC)/config/host.def +else + echo '#define InstPgmFlags -s' >> $(CVSCOSRC)/config/host.def +endif +ifneq (,$(findstring ifort,$(DEB_BUILD_OPTIONS))) + echo '#define HasIntelifc YES' >> $(CVSCOSRC)/config/host.def +else + echo '#define Hasgfortran YES' >> $(CVSCOSRC)/config/host.def +endif + $(MAKE) cernlib-configure-local + mkdir -p stampdir + touch stampdir/configure-stamp + +cernlib-configure-local: + +stampdir/patch-stamp: stampdir/configure-stamp + # A hacky way to use dpatch without actually necessarily + # having it installed. Patches whose name ends in .sh.dpatch + # are really shell scripts. + @set -e ; \ + export LC_COLLATE=C ; \ + for patch in `ls -1 $(PATCHDIR)/*.dpatch 2> /dev/null \ + | grep -v 000-unpack.sh`; do \ + if [ "$$patch" = "$${patch%.sh.dpatch}" ] ; then \ + echo "Applying patch `basename $${patch%.dpatch}`..." ;\ + patch -f -p1 < "$$patch" > /dev/null ; \ + else \ + echo "Running script `basename $${patch%.dpatch}`..." ;\ + chmod a+x "$$patch" ; \ + "$$patch" -patch ; \ + fi ; \ + done + mkdir -p stampdir + touch stampdir/patch-stamp + +buildtree: stampdir/patch-stamp + mkdir -p $(CERN_BUILDDIR)/log + cd $(CERN_BUILDDIR) && $(CVSCOSRC)/config/imake_boot + set -e ; \ + for package in $(NEEDS_MAKEFILE) ; do \ + if [ -d $(CVSCOSRC)/$$package ] ; then \ + cd $(CERN_BUILDDIR)/ && $(MAKE) MAKEOVERRIDES= \ + $$package/Makefile ; \ + fi ; \ + done + $(MAKE) cernlib-setup-local + +cernlib-setup-local: + +# build libraries (currently I can get shared libraries to compile only +# on Linux) +cernlib-libraries: buildtree + set -e ; \ + for package in $(LIB_PACKAGES) ; do \ + if [ -d $(CVSCOSRC)/$$package ] ; then \ + cd $(CERN_BUILDDIR)/$$package && $(MAKE) \ + MAKEOVERRIDES= install.lib ; \ + if [ "$(ARCH)" = Linux ] ; then \ + cd $(CERN_BUILDDIR)/$$package && $(MAKE) \ + MAKEOVERRIDES= install.shlib ; \ + fi ; \ + fi ; \ + done ; \ + for file in $(CERN_LIBDIR)/lib*-shift.a ; do \ + if [ -L $$file ] ; then rm -f $$file ; fi ; \ + done + +# build programs +cernlib-programs: + set -e ; \ + for package in $(BIN_PACKAGES) ; do \ + if [ -d $(CVSCOSRC)/$$package ] ; then \ + cd $(CERN_BUILDDIR)/$$package && $(MAKE) \ + MAKEOVERRIDES= CERN_LEVEL=. install.bin ; \ + fi ; \ + done + +# Test suite. Run all tests even if some fail before the end. +stampdir/cernlib-test-pass: stampdir/cernlib-arch-stamp +ifeq (,$(findstring nocheck,$(DEB_BUILD_OPTIONS))) + set -e ; \ + if [ "$(ARCH)" = Linux ] ; then \ + export LD_LIBRARY_PATH="$(CERN_SHLIBDIR):$${LD_LIBRARY_PATH}" ;\ + fi ; \ + for package in $(TEST_PACKAGES); do \ + if [ -d $(CVSCOSRC)/$$package ] ; then \ + $(MAKE) -C $(CERN_BUILDDIR)/$$package MAKEOVERRIDES= \ + test || touch stampdir/cernlib-test-fail ; \ + fi ; \ + done ; \ + if [ -e stampdir/cernlib-test-fail ] ; then \ + echo "*** Failed test suite!!! ***" ; \ + exit 1 ; \ + else touch $@ ; fi +else + touch $@ +endif + +clean: + rm -rf stampdir src doc bin lib shlib build 200? + rm -f $(PATCHDIR)/9[0-9][0-9]*.dpatch + +.PHONY: all gunzip patch buildtree clean \ + cernlib-arch cernlib-arch-local cernlib-libraries cernlib-programs \ + cernlib-test cernlib-indep cernlib-indep-local + --- cernlib-2006.dfsg.2.orig/debian/add-ons/INSTALL +++ cernlib-2006.dfsg.2/debian/add-ons/INSTALL @@ -0,0 +1,75 @@ +CERNLIB INSTALLATION + +To install: + +1) Install the libraries required by CERNLIB... see PREREQUISITES below. + +2) from the top-level CERNLIB source directory: + cp debian/add-ons/Makefile . + +3) Then: + +Debian GNU/Linux +---------------- +To produce Debian packages: + +$ fakeroot debian/rules binary +[wait a couple hours] +$ sudo dpkg -i ../*.deb + +Note: you may not want to install the .debs of zftp, pawserv, fatmen, hepdb, +which are a) insecure (send passwords in cleartext) and b) no longer +widely used. + +Other Linux, Unix or Mac OS X +----------------------------- + +$ make prefix=/usr/local sysconfdir=/etc +[wait a couple hours] +sudo make prefix=/usr/local sysconfdir=/etc install + +Note: you may want to delete the binaries of zserv, pawserv from /usr/local/sbin +and the binaries of fat*, hep*, zftp from /usr/local/bin for the reasons +mentioned above. + +If you are installing paw, zftp, fatserv, pawserv or zserv, then: +a) make sure you have the following lines in /etc/services: + +pawserv 345/tcp # Perf Analysis Workbench +pawserv 345/udp # Perf Analysis Workbench +zserv 346/tcp # Zebra server +zserv 346/udp # Zebra server +fatserv 347/tcp # Fatmen Server +fatserv 347/udp # Fatmen Server + +b) if you install pawserv and/or zserv, put something like this in + /etc/inetd.conf: + +zserv stream tcp nowait root /usr/local/sbin/zserv zserv +pawserv stream tcp nowait root /usr/local/sbin/pawserv pawserv + +PREREQUISITES + +- On Debian GNU/Linux, have the following packages and their dependencies + installed: + + dpatch, patch, mawk (or gawk), xutils (for imake), debhelper, gfortran, + cfortran, x-dev, libxt-dev, libx11-dev, lesstif2-dev, libblas-dev, + liblapack-dev, texlive (or some reasonable subset), fakeroot, build-essential + +- On RedHat Linux, the following packages and their dependencies should + suffice (note, not tested) + + make, patch, gawk, XFree86-devel, XFree86-libs, gcc-gfortran, lesstif-devel, + lesstif, tetex-latex, blas*, lapack* + + * The blas and lapack RPMS may be obtained from RedHat RawHide: + ftp://ftp.redhat.com/pub/redhat/linux/rawhide + +- On Mac OS X, have the developers' tools CD and the following Fink packages + installed: (see http://fink.sourceforge.net for more info about Fink) + + make (GNU make), xfree86-base (for imake), gfortran, atlas, + lesstif (or openmotif3) and the related -bin and -shlibs packages, + tetex (maybe only tetex-base, I haven't investigated fully) + --- cernlib-2006.dfsg.2.orig/debian/add-ons/README +++ cernlib-2006.dfsg.2/debian/add-ons/README @@ -0,0 +1,47 @@ +Contents of this directory are copyright (C) Kevin B. McCarty, 2001-2007, +except where noted otherwise. They are licensed under the GNU General +Public License, version 2 or later, at your choice. + +A copy of the GNU GPL may be found on Debian systems at: +/usr/share/common-licenses/GPL +or on the Web at: http://www.gnu.org/copyleft/gpl.html + +This directory contains numerous patches and additions to the canonical version +of CERNLIB supplied by CERN. To compile CERNLIB accordingly, copy the Makefile +in this directory to the top-level CERNLIB source directory and run make with +whatever variables you like. + +This packaging of CERNLIB adds support for: + +- shared libraries and shadow passwords (Linux only) +- Mac OS X compilation +- Filesystem Hierarchy Standard: run make with these variables set: + "make prefix=/usr sysconfdir=/etc mandir=/usr/share/man" +- recursive dependency checking with a rewritten "cernlib" script +- common GNU Makefile directories, e.g. $prefix, $datadir +- automatic generation of CERNLIB documents included with the source +- nice X11 app-defaults +- various other bug fixes + +Note that unlike the upstream version of CERNLIB, which installs to +$CERN/$CERN_LEVEL (e.g. /opt/cern/2003), this packaging of CERNLIB will +install binaries to /usr/local/bin, daemons to /usr/local/sbin, shared +data to /usr/local/share, etc. Or change this by specifying $prefix with +the "make" command. + +This source package no longer includes PAW, Monte Carlo libraries, or +GEANT 3.21; those are now available separately. You will need to first +compile and install this source code before attempting to install those +other modules. + +Things NOT included in this packaging of CERNLIB: + +- FLUKA code; see www.fluka.org to obtain that +- Pythia/Jetset/Ariadne/Lepto; see the respective web sites + +These are omitted for licensing reasons (i.e. I am not convinced that it +is permissible for me to distribute them under the terms of the GPL). +See http://people.debian.org/~kmccarty/cernlib/ for more information. + +--Kevin McCarty, 15 February 2005 + --- cernlib-2006.dfsg.2.orig/debian/add-ons/misc/cernlib.m4 +++ cernlib-2006.dfsg.2/debian/add-ons/misc/cernlib.m4 @@ -0,0 +1,172 @@ +dnl -*- Autoconf -*- +dnl autoconf macros for the cernlib libraries +dnl Copyright (C) 2004, 2005 Patrice Dumas +dnl +dnl This program is free software; you can redistribute it and/or modify +dnl it under the terms of the GNU General Public License as published by +dnl the Free Software Foundation; either version 2 of the License, or +dnl (at your option) any later version. +dnl +dnl This program is distributed in the hope that it will be useful, +dnl but WITHOUT ANY WARRANTY; without even the implied warranty of +dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +dnl GNU General Public License for more details. +dnl +dnl You should have received a copy of the GNU General Public License +dnl along with this program; if not, write to the Free Software +dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +dnl A basic axample of the macro usage: +dnl +dnl AC_LIB_CERNLIB(kernlib,CLTOU, +dnl [ +dnl AC_LIB_CERNLIB(mathlib,GAUSS,[LIBS="$CERNLIB_LIBS $LIBS"]) +dnl ]) + +dnl +dnl --with-static-cernlib forces the static or dynamic linking. +dnl --with-cernlib gives the location of cernlib. +dnl +dnl If the type of linking isn't specified it is assumed to be static. +dnl +dnl For static linking: +dnl - if the binary program 'cernlib-static' or 'cernlib' is in the path it is +dnl assumed that a static linking using the information reported by that +dnl script is wanted. +dnl - otherwise if the environment variable CERNLIB exists it is assumed to be the +dnl location of the static library. +dnl - otherwise if the environment variable CERN_ROOT exists it is assumed +dnl that CERN_ROOT/lib is the location of the static library. +dnl - otherwise a simple linking is performed. +dnl +dnl If a dynamic linking is selected: +dnl - if the binary program 'cernlib' is in the path it is assumed that it is the +dnl debian script and it is called with -dy. +dnl - otherwise a simple linking is performed. +dnl +dnl AC_LIB_CERNLIB ([LIBRARY = kernlib], [FUNCTION = CLTOU], [ACTION-IF-FOUND], +dnl [ACTION-IF-NOT-FOUND]) +dnl should be called afterwards for each of the cernlib library needed. +dnl Based on the information collected by AC_CERNLIB the needed flags are +dnl added to the linking flags or the files and flags are added to the +dnl $CERNLIB_LIBS shell variable and a test of linking is performed. +dnl +dnl The static library linking flags and files are in $CERNLIB_LIBS. + + +# AC_CERNLIB check for cernlib location and whether it should be +# statically linked or not. +AC_DEFUN([AC_CERNLIB], [ +CERNLIB_LIB_PATH= +CERNLIB_STATIC=yes +AC_ARG_WITH(static_cernlib, +[ --with-static-cernlib link statically with the cernlib], +[ CERNLIB_STATIC=$withval ]) + +AC_ARG_WITH(cernlib, +[ --with-cernlib cernlib location], +[ CERNLIB_LIB_PATH=$withval ]) + + +if test "z$CERNLIB_STATIC" != "zno"; then + CERNLIB_STATIC=yes + if test "z$CERNLIB_LIB_PATH" = z; then + AC_PATH_PROG(CERNLIB_BIN, cernlib-static, no) + if test $CERNLIB_BIN = no; then + AC_PATH_PROG(CERNLIB_BIN, cernlib, no) + fi + if test $CERNLIB_BIN = no; then + if test "z$CERNLIB" != z -a -d "$CERNLIB"; then + CERNLIB_LIB_PATH=$CERNLIB + AC_MSG_NOTICE([using the CERNLIB environment variable for cernlib location]) + elif test "z$CERN_ROOT" != z -a -d "$CERN_ROOT/lib"; then + CERNLIB_LIB_PATH=$CERN_ROOT/lib + AC_MSG_NOTICE([using the CERN_ROOT environment variable for cernlib location]) + fi + fi + fi +else + AC_PATH_PROG(CERNLIB_BIN, cernlib, no) + if test "z$CERNLIB_LIB_PATH" != z; then + LDFLAGS="$LDFLAGS -L$CERNLIB_LIB_PATH" + fi +fi +]) + +# AC_LIB_CERNLIB ([LIBRARY = kernlib], [FUNCTION = CLTOU], [ACTION-IF-FOUND], +# [ACTION-IF-NOT-FOUND]) +# check for a function in a library of the cernlib +AC_DEFUN([AC_LIB_CERNLIB], [ +AC_REQUIRE([AC_CERNLIB]) + +cernlib_lib_ok="no" + +if test "z$1" = z; then + cern_library=kernlib +else + cern_library=$1 +fi + +if test "z$2" = z; then + cern_func=CLTOU +else + cern_func=$2 +fi + +save_CERNLIB_LIBS=$CERNLIB_LIBS +save_LIBS=$LIBS + +if test "z$CERNLIB_STATIC" = "zyes"; then + cernlib_lib_static_found=no + AC_MSG_NOTICE([cernlib: linking with a static $cern_library]) + if test "z$CERNLIB_BIN" != "zno"; then + cernlib_bin_out=`$CERNLIB_BIN $cern_library` + CERNLIB_LIBS="$cernlib_bin_out $CERNLIB_LIBS" + cernlib_lib_static_found=yes + elif test "z$CERNLIB_LIB_PATH" != z; then +dnl .a for UNIX libraries only ? + if test -f "$CERNLIB_LIB_PATH/lib${cern_library}.a"; then + CERNLIB_LIBS="$CERNLIB_LIB_PATH/lib${cern_library}.a $CERNLIB_LIBS" + cernlib_lib_static_found=yes + fi + fi + if test "z$cernlib_lib_static_found" = zno; then + AC_MSG_WARN([cannot determine the cernlib location for static linking]) + fi +else + AC_MSG_NOTICE([trying a dynamical link with $cern_library]) + if test "z$CERNLIB_BIN" != "zno"; then + # try link with debian cernlib script with -dy + cernlib_bin_out=`$CERNLIB_BIN -dy $cern_library` + CERNLIB_LIBS="$cernlib_bin_out $CERNLIB_LIBS" + else + CERNLIB_LIBS="-l$cern_library $CERNLIB_LIBS" + fi +fi + +dnl now try the link +LIBS="$CERNLIB_LIBS $LIBS" +AC_LANG_PUSH(Fortran 77) +AC_LINK_IFELSE([ program main + call $cern_func + end +], +[ + cernlib_lib_ok=yes +], +[ + CERNLIB_LIBS=$save_CERNLIB_LIBS +]) +AC_LANG_POP(Fortran 77) +LIBS=$save_LIBS +AC_SUBST([CERNLIB_LIBS]) + +AS_IF([test x"$cernlib_lib_ok" = xyes], + [m4_default([$3], [AC_DEFINE_UNQUOTED(AS_TR_CPP(HAVE_CERNLIB_${cern_library}_${cern_func})) + ])], + [ + AC_MSG_WARN([cannot link $cern_func in lib$cern_library ]) + $4 + ]) + +]) --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/nysynopt.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/nysynopt.1 @@ -0,0 +1,86 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH NYSYNOPT 1 "Mar 12, 2008" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +nysynopt \- tool to list contents of specialized\-format patches +.SH SYNOPSIS +.B nysynopt +.IR "pam options cradle" " [ " print " ] [ .go ]" +.SH DESCRIPTION +.PP +\fBnysynopt\fP is a tool in the Nypatchy suite of programs +for working with Patchy Master Files (PAM files); +see \fBnypatchy\fP(1). Like \fBnylist\fP, it can print a listing (including +line numbers) of the contents of these files. However, it permits fine\-tuning +of the output through the use of a cradle file whose syntax is a subset of +the \fBnypatchy\fP instruction set. It also expands sequences inline. +.SH USAGE +The parameter \fIpam\fP is the name of the PAM file (a default extension +of ".car" is assumed), \fIprint\fP is the output file to write to +(the default is standard output if omitted), and \fIoptions\fP is a sequence +of single\-character flags. \fIcradle\fP is the set of instructions for +\fBnysynopt\fP. If \fIcradle\fP is not given (or is replaced with "\-"), +standard input is assumed. This argument may also be replaced by the three +characters "EOF" to indicate that there is no cradle. +.PP +The command should be ended with ".go" unless one wants to enter the +Nypatchy interactive shell. +.SH OPTIONS +.PP +Note that options should be given as a single string of characters with +no space separation and no use of the \- character (except that it can be +used in place of the options field if no options are desired). +Alphabetic options are not case\-sensitive. +.TP +E +Page ejects forced in the PAM file with +SEQ,QEJECT are honored (only if the +S option is also given). +.TP +H +Print help information only. +.TP +I +Line numbers for individual PAM files should each start at zero. +.TP +M +Missing sequences should be signalled. +.TP +S +Start each new deck on a new page. +.TP +X +Do not signal actions. +.TP +Y +Do not expand sequences called by +CDE. +.TP +Z +Do not expand sequences called by +SEQ. +.TP +.I n +For \fIn\fP a number from 0 to 4 inclusive, assume 58, 62, 74, 84, or 98 lines +per page in the output. (The default is 110 lines per page.) For \fIn\fP +a number greater than or equal to 20, use that specific number of lines per +page. +.TP ++ +Inhibit the initial page\-eject. +.SH SEE ALSO +.BR fcasplit "(1), " nycheck "(1), " nydiff "(1), " nyindex "(1), " +.BR nylist "(1), " nymerge "(1), " nypatchy "(1), " nyshell "(1), " +.BR nytidy "(1), " yexpand (1) +.PP +The reference manual for the Nypatchy suite of programs is available +in compressed PostScript format at the following URL: +.br +.I http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/p5refman.ps.gz +.PP +Running the command "nysynopt help .no" also gives some brief help on usage. +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). It is +licensed under the GNU General Public License, version 2 or later (at your +choice). +.SH COPYRIGHT +Copyright (C) Kevin B. McCarty, 2008. --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/fatsend.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/fatsend.1 @@ -0,0 +1,42 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH FATSEND 1 "September 25, 2002" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +fatsend \- program to do something +.SH SYNOPSIS +.B fatsend +.RI [ options ] " files" ... +.br +.B bar +.RI [ options ] " files" ... +.SH DESCRIPTION +This manual page documents briefly the +.B fatsend +and +.B bar +commands. +This manual page was written for the Debian distribution +because the original program does not have a manual page. +.PP +\fBfatsend\fP is a program that... +.SH OPTIONS +These programs follow the usual GNU command line syntax, with long +options starting with two dashes (`-'). +A summary of options is included below. +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. +.SH SEE ALSO +.BR bar (1), +.BR baz (1). +.br +The programs are documented fully by +.IR "The Rise and Fall of a Fooish Bar" , +available via the Info system. +.SH AUTHOR +This manual page was written by Kevin McCarty , +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/kuipc.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/kuipc.1 @@ -0,0 +1,46 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH KUIPC 1 "April 2, 2004" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +kuipc \- the CERN KUIP compiler +.SH SYNOPSIS +.B kuipc +.RI " [ " options " ] [ " inputfile " [ " outputfile " ] ]" +.SH DESCRIPTION +.PP +\fBkuipc\fP, the Kit for a User Interface Package Compiler, is a tool to +simplify the writing of a program's user interface code. It takes as input a +Command Definition File (CDF) that describes the commands to be understood by +the program, and outputs C or FORTRAN code that makes the appropriate function +calls to set up the user interface. This code can then be compiled and linked +with the rest of the program. Since the generated code uses KUIP routines, the +program must also be linked against the Packlib library that contains them. +.PP +If no output file is specified, kuipc will output generated code to a file +whose name is the same as the input file's, with the ending '.cdf' replaced +by '.f' or '.c' as appropriate. If neither input nor output file are given, +kuipc will prompt for them. Be careful because kuipc overwrites existing +files with no warning. +.SH OPTIONS +.TP +.B \-c +Generate C code. +.TP +.B \-f +Generate FORTRAN code (the default). +.TP +.B \-split +Output several files, one for each time the >Name control line is used in +the CDF input. The names of the output files will correspond to the +arguments given on the >Name control lines. +.SH SEE ALSO +The KUIP manual: http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/kuip.ps.gz +.br +.SH BUGS +When the \-split option is used, kuipc will still create an output file +that it would have made if \-split was not used; the file will be of zero +size. +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/fatnew.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/fatnew.1 @@ -0,0 +1,42 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH FATNEW 1 "September 25, 2002" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +fatnew \- program to do something +.SH SYNOPSIS +.B fatnew +.RI [ options ] " files" ... +.br +.B bar +.RI [ options ] " files" ... +.SH DESCRIPTION +This manual page documents briefly the +.B fatnew +and +.B bar +commands. +This manual page was written for the Debian distribution +because the original program does not have a manual page. +.PP +\fBfatnew\fP is a program that... +.SH OPTIONS +These programs follow the usual GNU command line syntax, with long +options starting with two dashes (`-'). +A summary of options is included below. +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. +.SH SEE ALSO +.BR bar (1), +.BR baz (1). +.br +The programs are documented fully by +.IR "The Rise and Fall of a Fooish Bar" , +available via the Info system. +.SH AUTHOR +This manual page was written by Kevin McCarty , +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/fatmen.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/fatmen.1 @@ -0,0 +1,42 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH FATMEN 1 "September 25, 2002" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +fatmen \- program to do something +.SH SYNOPSIS +.B fatmen +.RI [ options ] " files" ... +.br +.B bar +.RI [ options ] " files" ... +.SH DESCRIPTION +This manual page documents briefly the +.B fatmen +and +.B bar +commands. +This manual page was written for the Debian distribution +because the original program does not have a manual page. +.PP +\fBfatmen\fP is a program that... +.SH OPTIONS +These programs follow the usual GNU command line syntax, with long +options starting with two dashes (`-'). +A summary of options is included below. +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. +.SH SEE ALSO +.BR bar (1), +.BR baz (1). +.br +The programs are documented fully by +.IR "The Rise and Fall of a Fooish Bar" , +available via the Info system. +.SH AUTHOR +This manual page was written by Kevin McCarty , +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/hepbackup.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/hepbackup.1 @@ -0,0 +1,42 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH HEPBACKUP 1 "September 25, 2002" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +hepbackup \- program to do something +.SH SYNOPSIS +.B hepbackup +.RI [ options ] " files" ... +.br +.B bar +.RI [ options ] " files" ... +.SH DESCRIPTION +This manual page documents briefly the +.B hepbackup +and +.B bar +commands. +This manual page was written for the Debian distribution +because the original program does not have a manual page. +.PP +\fBhepbackup\fP is a program that... +.SH OPTIONS +These programs follow the usual GNU command line syntax, with long +options starting with two dashes (`-'). +A summary of options is included below. +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. +.SH SEE ALSO +.BR bar (1), +.BR baz (1). +.br +The programs are documented fully by +.IR "The Rise and Fall of a Fooish Bar" , +available via the Info system. +.SH AUTHOR +This manual page was written by Kevin McCarty , +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/nyshell.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/nyshell.1 @@ -0,0 +1,82 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH NYSHELL 1 "Mar 12, 2008" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +nyshell \- tool to generate shell scripts to build nypatchy output +.SH SYNOPSIS +.B nyshell +.IR "logfile options cradle" " [ " print " ] [ .go ]" +.SH DESCRIPTION +.PP +\fBnyshell\fP is a tool in the Nypatchy suite of programs +for working with Patchy Master Files (PAM files); +see \fBnypatchy\fP(1). Specifically, given the log file of a \fBnypatchy\fP +run, it can create a shell script to compile all the source code files +output by \fBnypatchy\fP. This program is similar to \fBfcasplit\fP except +that it takes the log file as input instead of a source file, and it +remembers which source code files have already been compiled in previous runs. +.SH USAGE +\fIlogfile\fP is the name of the log file coming from \fBnypatchy\fP, +with a default extension of ".log". A cradle file \fIcradle\fP may be +given to add additional setup options such as desired compilers or compiler +flags to use. (See the reference manual for more details.) +\fIprint\fP is the file to which informational output should be written +(the default is standard output if omitted), and \fIoptions\fP is a sequence +of single\-character flags. This program generates a shell script file named +\fIname\fP.shfca (with \fIname\fP being the part of \fIlogfile\fP sans +extension) that can be run to build all object files. The file +\fIname\fP.xqtlog "remembers" the current state. +.PP +The command should be ended with ".go" unless one wants to enter the +Nypatchy interactive shell. +.SH OPTIONS +.PP +Note that options should be given as a single string of characters with +no space separation and no use of the \- character (except that it can be +used in place of the options field if no options are desired). +Alphabetic options are not case\-sensitive. +.TP +A +Force recompilation of all routines. +.TP +B +Bypass tests based on the .xqtlog file. +.TP +E +Bypass tests based on the .xqtlog file if it is empty. +.TP +H +Print help information only. +.TP +Q +"quick" \- Do not print the setup. +.TP +S +Print the setup only (only together with H). +.TP +U +"up to date" \- Check that all .o files are ready to go into a library. +.TP +V +"verbose" \- Print the complete setup. +.SH SEE ALSO +.BR fcasplit "(1), " nycheck "(1), " nydiff "(1), " nyindex "(1), " +.BR nylist "(1), " nypatchy "(1), " nymerge "(1), " +.BR nysynopt "(1), " nytidy "(1), " yexpand (1) +.PP +The reference manual for the Nypatchy suite of programs is available +in compressed PostScript format at the following URL: +.br +.I http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/p5refman.ps.gz +.PP +Running the command "nyshell help .no" also gives some brief help on usage. +Running the command "nyshell \- hs .no" prints the default setup (compiler +names and options) to be used in the generated shell scripts. +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). It is +licensed under the GNU General Public License, version 2 or later (at your +choice). +.SH COPYRIGHT +Copyright (C) Kevin B. McCarty, 2008. --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/nydiff.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/nydiff.1 @@ -0,0 +1,60 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH NYDIFF 1 "Mar 12, 2008" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +nydiff \- tool to compare two versions of a specialized\-format patch +.SH SYNOPSIS +.B nydiff +.IR "oldpam newpam name options" " [ " print " ] [ .go ]" +.SH DESCRIPTION +.PP +\fBnydiff\fP is a tool in the Nypatchy suite of programs +for working with Patchy Master Files (PAM files); +see \fBnypatchy\fP(1). Specifically, it compares two different versions +of the same PAM file and generates a "correction patch" that can be used +by \fBnypatchy\fP to update the older version to the newer version. +.SH USAGE +The parameter \fIoldpam\fP is the name of the older version of the PAM file +(a default extension of ".car" is assumed), \fInewpam\fP is the name of +the newer version, \fIprint\fP is the output file to write to +(the default is standard output if omitted), and \fIoptions\fP is a sequence +of single\-character flags. The parameter \fIname\fP is the name to be +used for the correction file to be generated (the specific filename will be +\fIname\fP.ucra for a correction patch to be used by Nypatchy). +.PP +The command should be ended with ".go" unless one wants to enter the +Nypatchy interactive shell. +.SH OPTIONS +.PP +Note that options should be given as a single string of characters with +no space separation and no use of the \- character (except that it can +be used in place of the options field if no options are desired). +Alphabetic options are not case\-sensitive. +.TP +A +"anyway" \- Bypass the first sanity check on sufficient matching. +.TP +F +"force" \- Bypass the second sanity check on sufficient matching. +.TP +H +Print help information only. +.SH SEE ALSO +.BR fcasplit "(1), " nycheck "(1), " nyindex "(1), " +.BR nylist "(1), " nymerge "(1), " nypatchy "(1), " nyshell "(1), " +.BR nysynopt "(1), " nytidy "(1), " yexpand (1) +.PP +The reference manual for the Nypatchy suite of programs is available +in compressed PostScript format at the following URL: +.br +.I http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/p5refman.ps.gz +.PP +Running the command "nydiff help .no" also gives some brief help on usage. +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). It is +licensed under the GNU General Public License, version 2 or later (at your +choice). +.SH COPYRIGHT +Copyright (C) Kevin B. McCarty, 2008. --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/yexpand.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/yexpand.1 @@ -0,0 +1,51 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH YEXPAND 1 "Mar 12, 2008" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +yexpand \- tool to expand environment variables in Nypatchy cradles +.SH SYNOPSIS +.B yexpand +.IR inputfile " [ " outputfile " ] " +.SH DESCRIPTION +.PP +\fByexpand\fP is a very simple script to expand environment variables in +a text file to their current values in the shell environment. +It was written to be used with \fBnypatchy\fP cradles. It is recommended +you not try to use it for any other purposes (note BUGS below). +.SH USAGE +\fByexpand\fP takes \fIinputfile\fP as input, replaces all instances of shell +variables (in the form $VARIABLE or ${VARIABLE}) with their current values in +the environment, and saves the result to \fIoutputfile\fP. Undefined variables +are replaced with the empty string. If \fIoutputfile\fP +is not given, the result +is instead saved to the current directory as a file of the same name as +\fIinputfile\fP. Thus an input file in the current directory will be +overwritten. +.SH BUGS +This script is very simple\-minded. Since it basically just echos its input +file as a here\-doc, it will attempt to perform all types of shell +substitution (command substitution, etc.) as well as variable substitution. +Hence it is likely to fail on anything except the very simplest text files. +.PP +Additionally, this script creates a temporary file. The file is created +in the current directory, so there should not be security implications. +However, any existing file named \fIfile\fP.yexp (where \fIfile\fP is the +basename of \fIinputfile\fP) in the current directory will be overwritten +and then deleted. +.SH SEE ALSO +.BR fcasplit "(1), " nycheck "(1), " nydiff "(1), " nyindex "(1), " +.BR nylist "(1), " nymerge "(1), " nypatchy "(1), " +.BR nyshell "(1), " nysynopt "(1), " nytidy (1) +.PP +The reference manual for the Nypatchy suite of programs is available +in compressed PostScript format at the following URL: +.br +.I http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/p5refman.ps.gz +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). It is +licensed under the GNU General Public License, version 2 or later (at your +choice). +.SH COPYRIGHT +Copyright (C) Kevin B. McCarty, 2008. --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/hepdb.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/hepdb.1 @@ -0,0 +1,42 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH HEPDB 1 "September 25, 2002" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +hepdb \- program to do something +.SH SYNOPSIS +.B hepdb +.RI [ options ] " files" ... +.br +.B bar +.RI [ options ] " files" ... +.SH DESCRIPTION +This manual page documents briefly the +.B hepdb +and +.B bar +commands. +This manual page was written for the Debian distribution +because the original program does not have a manual page. +.PP +\fBhepdb\fP is a program that... +.SH OPTIONS +These programs follow the usual GNU command line syntax, with long +options starting with two dashes (`-'). +A summary of options is included below. +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. +.SH SEE ALSO +.BR bar (1), +.BR baz (1). +.br +The programs are documented fully by +.IR "The Rise and Fall of a Fooish Bar" , +available via the Info system. +.SH AUTHOR +This manual page was written by Kevin McCarty , +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/fatsrv.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/fatsrv.1 @@ -0,0 +1,42 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH FATSRV 1 "September 25, 2002" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +fatsrv \- program to do something +.SH SYNOPSIS +.B fatsrv +.RI [ options ] " files" ... +.br +.B bar +.RI [ options ] " files" ... +.SH DESCRIPTION +This manual page documents briefly the +.B fatsrv +and +.B bar +commands. +This manual page was written for the Debian distribution +because the original program does not have a manual page. +.PP +\fBfatsrv\fP is a program that... +.SH OPTIONS +These programs follow the usual GNU command line syntax, with long +options starting with two dashes (`-'). +A summary of options is included below. +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. +.SH SEE ALSO +.BR bar (1), +.BR baz (1). +.br +The programs are documented fully by +.IR "The Rise and Fall of a Fooish Bar" , +available via the Info system. +.SH AUTHOR +This manual page was written by Kevin McCarty , +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/fatback.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/fatback.1 @@ -0,0 +1,42 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH FATBACK 1 "September 25, 2002" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +fatback \- program to do something +.SH SYNOPSIS +.B fatback +.RI [ options ] " files" ... +.br +.B bar +.RI [ options ] " files" ... +.SH DESCRIPTION +This manual page documents briefly the +.B fatback +and +.B bar +commands. +This manual page was written for the Debian distribution +because the original program does not have a manual page. +.PP +\fBfatback\fP is a program that... +.SH OPTIONS +These programs follow the usual GNU command line syntax, with long +options starting with two dashes (`-'). +A summary of options is included below. +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. +.SH SEE ALSO +.BR bar (1), +.BR baz (1). +.br +The programs are documented fully by +.IR "The Rise and Fall of a Fooish Bar" , +available via the Info system. +.SH AUTHOR +This manual page was written by Kevin McCarty , +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/hepserv.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/hepserv.1 @@ -0,0 +1,42 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH HEPSERV 1 "September 25, 2002" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +hepserv \- program to do something +.SH SYNOPSIS +.B hepserv +.RI [ options ] " files" ... +.br +.B bar +.RI [ options ] " files" ... +.SH DESCRIPTION +This manual page documents briefly the +.B hepserv +and +.B bar +commands. +This manual page was written for the Debian distribution +because the original program does not have a manual page. +.PP +\fBhepserv\fP is a program that... +.SH OPTIONS +These programs follow the usual GNU command line syntax, with long +options starting with two dashes (`-'). +A summary of options is included below. +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. +.SH SEE ALSO +.BR bar (1), +.BR baz (1). +.br +The programs are documented fully by +.IR "The Rise and Fall of a Fooish Bar" , +available via the Info system. +.SH AUTHOR +This manual page was written by Kevin McCarty , +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/nyindex.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/nyindex.1 @@ -0,0 +1,77 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH NYINDEX 1 "Mar 12, 2008" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +nyindex \- tool to print index of specialized\-format patches +.SH SYNOPSIS +.B nyindex +.IR "pam options" " [ " print " ] [ .go ]" +.SH DESCRIPTION +.PP +\fBnyindex\fP is a tool in the Nypatchy suite of programs +for working with Patchy Master Files (PAM files); +see \fBnypatchy\fP(1). Specifically, it can output a table of contents +and/or index for these files. +.SH USAGE +The parameter \fIpam\fP is the name of the PAM file (a default extension +of ".car" is assumed), \fIprint\fP is the output file to write to +(the default is standard output if omitted), and \fIoptions\fP is a sequence +of single\-character flags. +.PP +The command should be ended with ".go" unless one wants to enter the +Nypatchy interactive shell. +.SH OPTIONS +.PP +Note that options should be given as a single string of characters with +no space separation and no use of the \- character (except that it can be +used in place of the options field if no options are desired). +Alphabetic options are not case\-sensitive. +.TP +B +Print bare table of contents without comments. +.TP +H +Print help information only. +.TP +P +Patch names only in the table of contents. +.TP +Q +Quick: suppress the table of contents. +.TP +X +Suppress the index of patch, deck, and sequence names. +.TP +Y +Suppress the index of deck and sequence names. +.TP +Z +Suppress the index of sequence names. +.TP +.I n +For \fIn\fP a number from 0 to 4 inclusive, assume 58, 62, 74, 84, or 98 lines +per page in the output. (The default is 110 lines per page.) For \fIn\fP +a number greater than or equal to 20, use that specific number of lines per +page. +.TP ++ +Inhibit the initial page\-eject. +.SH SEE ALSO +.BR fcasplit "(1), " nycheck "(1), " nydiff "(1), " +.BR nylist "(1), " nymerge "(1), " nypatchy "(1), " nyshell "(1), " +.BR nysynopt "(1), " nytidy "(1), " yexpand (1) +.PP +The reference manual for the Nypatchy suite of programs is available +in compressed PostScript format at the following URL: +.br +.I http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/p5refman.ps.gz +.PP +Running the command "nyindex help .no" also gives some brief help on usage. +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). It is +licensed under the GNU General Public License, version 2 or later (at your +choice). +.SH COPYRIGHT +Copyright (C) Kevin B. McCarty, 2008. --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/hepmove.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/hepmove.1 @@ -0,0 +1,42 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH HEPMOVE 1 "September 25, 2002" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +hepmove \- program to do something +.SH SYNOPSIS +.B hepmove +.RI [ options ] " files" ... +.br +.B bar +.RI [ options ] " files" ... +.SH DESCRIPTION +This manual page documents briefly the +.B hepmove +and +.B bar +commands. +This manual page was written for the Debian distribution +because the original program does not have a manual page. +.PP +\fBhepmove\fP is a program that... +.SH OPTIONS +These programs follow the usual GNU command line syntax, with long +options starting with two dashes (`-'). +A summary of options is included below. +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. +.SH SEE ALSO +.BR bar (1), +.BR baz (1). +.br +The programs are documented fully by +.IR "The Rise and Fall of a Fooish Bar" , +available via the Info system. +.SH AUTHOR +This manual page was written by Kevin McCarty , +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/zftp.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/zftp.1 @@ -0,0 +1,44 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH ZFTP 1 "February 3, 2003" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +zftp \- CERNLIB program to transfer ZEBRA formatted files over a network +.SH SYNOPSIS +.B zftp +.RI [ hostname ] +.br +.SH DESCRIPTION +.PP +\fBzftp\fP is a file transfer program that supports the transfer of +formatted, unformatted and ZEBRA RZ files. +(If you have no idea what ZEBRA files are, it is highly unlikely that you +want to use this program instead of a standard FTP client.) +Formatted files are typically KUIP macros, command or EXEC files, source code +or even FZ ALPHA exchange format files. Unformatted files may be FZ binary +exchange format or EPIO files or any other binary file with fixed length +records. +.PP +\fBzftp\fP also provides LS, CD, PWD and RSHELL commands. It provides a +common interface on all systems and the possibility of macros (via KUIP). +It avoids the problems of file format conversion that occur when transferring +binary files between VMS and UNIX systems. +\fBzftp\fP comes with the traditional KUIP user interface, including a HELP +function that describes the available commands. +.PP +Please note that, like many other FTP programs, \fBzftp\fP transfers unencrypted +passwords over the network. It should therefore be used only within a trusted +LAN. +.SH SEE ALSO +\[bu] \fBzftp\fP online HELP command +.br +.RB "\[bu] " ftp (1) +.br +.RB "\[bu] " zserv (8) +.PP +\fBzftp\fP is part of the CERNLIB CSPACK package, documented fully at +http://wwwinfo.cern.ch/asdoc/psdir/cspack.ps.gz (PostScript) or +http://wwwinfo.cern.ch/asdoc/WWW/cspack/cspmain/cspmain.html (HTML). +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/nymerge.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/nymerge.1 @@ -0,0 +1,69 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH NYMERGE 1 "Mar 12, 2008" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +nymerge \- tool to update and merge specialized\-format patches +.SH SYNOPSIS +.B nymerge +.IR "merge old new options" " [ " print " ] [ .go ]" +.SH DESCRIPTION +.PP +\fBnymerge\fP is a tool in the Nypatchy suite of programs +for working with Patchy Master Files (PAM files); +see \fBnypatchy\fP(1). Specifically, it can update a PAM file +\fIold\fP with a new version number and date/time stamp, optionally also +merging in updated source code from a separate PAM file \fImerge\fP, and saving +the result to file \fInew\fP. The default file extension of these +three files is presumed to be ".car". +.SH USAGE +The merge file \fImerge\fP may be replaced with "\-" if there is nothing +to merge. +\fIprint\fP is the file to which informational output should be written +(the default is standard output if omitted), and \fIoptions\fP is a sequence +of single\-character flags. +.PP +The command should be ended with ".go" unless one wants to enter the +Nypatchy interactive shell. +.SH OPTIONS +.PP +Note that options should be given as a single string of characters with +no space separation and no use of the \- character (except that it can be +used in place of the options field if no options are desired). +Alphabetic options are not case\-sensitive. +.TP +F +Update only the first PAM file title. +.TP +H +Print help information only. +.TP +P +Log only the patch names, not the decks. +.TP +Q +"quick" \- Do not log printing of patch or deck names. +.TP +U +Update version/date/time on all PAM titles found on the file. +.TP ++ +Inhibit the initial page\-eject. +.SH SEE ALSO +.BR fcasplit "(1), " nycheck "(1), " nydiff "(1), " nyindex "(1), " +.BR nylist "(1), " nypatchy "(1), " nyshell "(1), " +.BR nysynopt "(1), " nytidy "(1), " yexpand (1) +.PP +The reference manual for the Nypatchy suite of programs is available +in compressed PostScript format at the following URL: +.br +.I http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/p5refman.ps.gz +.PP +Running the command "nymerge help .no" also gives some brief help on usage. +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). It is +licensed under the GNU General Public License, version 2 or later (at your +choice). +.SH COPYRIGHT +Copyright (C) Kevin B. McCarty, 2008. --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/dzedit.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/dzedit.1 @@ -0,0 +1,62 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH DZEDIT 1 "April 15, 2004" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +dzedit \- the CERN ZEBRA documentation editor +.SH SYNOPSIS +.B dzedit +.RI " [ " options " ]" +.br +.B dzeX11 +.SH DESCRIPTION +.PP +\fBdzeX11\fP is an interactive interface to the DZDOC (ZEBRA documentation) +system developed at CERN. \fBdzedit\fP is a wrapper script around dzeX11 +that allows one to set a few environment options. ZEBRA, part of the Packlib +library, permits a developer to create complex data structures in the FORTRAN +77 language; the DZDOC system allows the developer to generate and maintain +documentation of ZEBRA data structures. +.SH OPTIONS +.TP +.BI "\-d " driver +Use the graphics driver \fIdriver\fP, i.e., have dzedit call the program +\fBdze\fP\fIdriver\fP. The default is "X11". You are exceedingly unlikely to +want anything other than the default. +.TP +.BI "\-h " host +Give the host to open the window on. This is the same as setting the +environment variable $DISPLAY to "\fIhost\fP:0.0". You don't need to do so +if you are logged on to a remote host through SSH (if you are using telnet, +shame on you!) +.TP +.BI "\-v " version +Specify the version of CERNLIB to use. This only makes sense if you have +a version of CERNLIB directly from CERN installed. In this case you should +also have set the environment variable $CERN. Then dzedit will look for the +dzeX11 program in the directory $CERN//bin/. +.SH FILES +.TP +\fBdzedit.kumac\fP +dzedit tries to read startup commands from this file in the current directory. +.TP +\fBdzedit.las\fP +dzedit stores the names of the ZEBRA file and documentation file in this file +in the current directory. +.TP +\fBlast.kumac\fP +At the end of a session, dzedit outputs this file containing +a transcript of the commands used during the session. +.SH SEE ALSO +The ZEBRA manual: +.br +http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/zebra.ps.gz +.br +(specifically, chapter 16 is about DZDOC). +.SH BUGS +This man page is essentially useless because the section of the ZEBRA manual +about DZDOC is incomprehensible and there are no tutorials about it. +Anyone who wants to provide a better man page is welcome to do so. +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/dzeX11.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/dzeX11.1 @@ -0,0 +1 @@ +.so man1/dzedit.1 --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/ypatchy.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/ypatchy.1 @@ -0,0 +1 @@ +.so man1/nypatchy.1 --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/zserv.8 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/zserv.8 @@ -0,0 +1,31 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH ZSERV 8 "February 3, 2003" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +zserv \- CERNLIB server program for transferring ZEBRA formatted files +.SH DESCRIPTION +.PP +\fBzserv\fP is the server for the ZFTP file transfer program. It listens +for connections on port 346. \fBzserv\fP is not in general run from the +command line, but only via \fBinetd\fP(8). +.PP +Please note that, like many other FTP servers, \fBzserv\fP receives unencrypted +passwords over the network. It should therefore be used only within a trusted +LAN. +.SH FILES +.RI "\[bu] " /etc/inetd.conf +\- specifies how inetd should call zserv +.SH SEE ALSO +.RB "\[bu] " zftp (1) +.br +.RB "\[bu] " inetd (8) +.br +.RB "\[bu] " inetd.conf (5) +.PP +\fBzserv\fP is part of the CERNLIB CSPACK package, documented fully at +http://wwwinfo.cern.ch/asdoc/psdir/cspack.ps.gz (PostScript) or +http://wwwinfo.cern.ch/asdoc/WWW/cspack/cspmain/cspmain.html (HTML). +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/kxterm.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/kxterm.1 @@ -0,0 +1,79 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH KXTERM 1 "January 24, 2003" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +kxterm \- the CERN KUIP terminal emulator +.SH SYNOPSIS +.B kxterm +.RI [ class "] [" options ] +.SH DESCRIPTION +.PP +\fBkxterm\fP is a terminal emulator combining the best features of +the (now defunct) Apollo DM pads (like: input and transcript +pads, automatic file backup of transcript pad, string +search in pads, etc.) and the Korn shell emacs\-style +command line editing and command line recall mechanism. For more detailed +information about the program, please see the online help available from +the kxterm Help menu. +.PP +kxterm has a number of X resources which can be set by the user; these are +listed in the online help and in the file /etc/X11/app\-defaults/KXterm, +where the default values are set. It should be noted that when kxterm is +acting as a client for another application, the desired X resource should be +prefixed by "Kx" plus the class name of the application. So for application +"Foo" the kxterm resource class would be KxFoo, and one would set +KxFoo*background, etc. One can also set the resource class of a kxterm +window via the command\-line with the +.I class +argument. +.SH OPTIONS +.TP +.BI "\-font " fn +Specifies the font used by kxterm. The font +.I fn +must be an XLFD (X Logical Font Description), as for example displayed by +the xlsfonts program. +.TP +.BI "\-geometry " geom +Specifies the preferred size and position of the kxterm window; see +.BR X (7x) +for details. +.TP +.BR \-h ", " \-help +Show a summary of options. +.TP +.BI \-iconic +Specifies that the window manager should start kxterm as an icon. +.TP +.BI "\-n " iconname +Specifies the name of the kxterm window in an iconic state. +.TP +.BI "\-name " name +Specifies both the title and the iconized name of the kxterm window. +.TP +.BI "\-pid " pid +Specifies the process ID of the program that kxterm should act as a client for. +.TP +.BI "\-prompt " prompt +Sets the prompt displayed in the input pad of the program. +.TP +.BI "\-tfont " fn +Specifies the font used by text boxes, the input pad, and the transcript +pad of the program. This should probably be a fixed\-width font like +"courier" or "fixed". +.TP +.BI "\-title " title +Sets the title of the kxterm window to +.IR title . +.SH SEE ALSO +.RB "\[bu] " xlsfonts (1) +\- a program to list available fonts on an X server +.br +.RB "\[bu] " paw++ (1) +\- a program using kxterm for its command interface +.br +\[bu] the online help available from kxterm's Help menu +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/cernlib.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/cernlib.1 @@ -0,0 +1,133 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH CERNLIB 1 "Jan 6, 2005" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +cernlib \- print CERN library dependencies +.SH SYNOPSIS +.B cernlib +.RI [ options ] " libraries" +.SH DESCRIPTION +.PP +\fBcernlib\fP is a tool to list the compiler and linker options necessary +to compile a CERNLIB program that has the given library dependencies. +It is generally used within a command substitution, as in the following +example: +.PP +gfortran \-o myprogram myprogram.F `cernlib \-G Motif pawlib` +.PP +This version of cernlib has been completely rewritten from the original +script provided by CERN. It now does recursive library dependency checking and +removes duplicate entries. +.PP +Note that by default, the cernlib script assumes that the CERN libraries are +to be linked against statically; if the environment variables $CERN or +$CERN_ROOT are specified, it looks for the libraries only in the +"lib" subdirectory of those locations, not any "shlib" subdirectory. +Furthermore, the script brackets the CERN libraries with linker instructions to +link statically. This is done to preserve the original upstream behavior, in +which all CERNLIB libraries exist only in static form. For instance, +"cernlib packlib" outputs: +.PP +\-Wl,\-static \-lpacklib \-lkernlib \-Wl,\-dy \-lm \-lnsl \-lcrypt \-ldl \-lg2c +.PP +If you want to link against ALL libraries (including CERNLIB) either +statically or dynamically, call the cernlib script with its \-safe flag +to omit these bracketing linker flags. +That is: if you want to link against all libraries (not just CERNLIB) +statically, use the \-static compiler flag and call cernlib with its \-safe +flag: +.PP +gfortran \-o myprogram myprogram.F \-static `cernlib \-safe \-G Motif pawlib` +.PP +and if you want to link against all libraries (including the CERN libraries) +dynamically, use the same command without the \-static compiler flag +(the linker assumes dynamic linking by default): +.PP +gfortran \-o myprogram myprogram.F `cernlib \-safe \-G Motif pawlib` +.SH OPTIONS +.TP +.BI "\-a " arch +Specify a system architecture, e.g. Linux (default), AIX, HP\-UX, etc. +.TP +.B \-dy +Equivalent to \-safe; for backwards compatibility. +.TP +.BI "\-G " driver +Specify a graphics driver. The available options on Linux are X11 and Motif +(the latter option will also work when the Lesstif library is present). +.TP +.B \-P, \-s +Ignored; for backwards compatibility. +.TP +.B \-safe +Do not make any assumptions about whether the CERN libraries should be linked +against dynamically or statically. (The default behavior, if this flag is not +used, is to link them statically.) +.TP +.B \-u +Do not include architecture\-specific libraries in the output. +.TP +.BI "\-v " version +Specify version of $CERN_LEVEL. This is meaningless unless you have installed +an upstream version of CERNLIB (i.e. not packaged by Debian); see the file +.IR /usr/share/doc/cernlib\-base/README.Debian . +.TP +.B \-?, \-\-help +Show a summary of options. +.TP +.B \-\- +Tell cernlib that this marks the end of cernlib\-specific flags, and +all following arguments are to be parsed as described in the \fBLIBRARIES\fP +section below. If \-\- is not given, the first word parsed as a library +name will be the first word not starting with a hyphen "\-" that is not +an argument to a preceding cernlib flag. +.SH LIBRARIES +The following library names are recognized by this version of the cernlib +script. These names may be used exactly as shown here, or prefixed by "\-l". +.TP +.B Core CERN libraries +mathlib, packlib, kernlib +.TP +.B Graphics and PAW libraries +graflib, pawlib +.TP +.B Monte Carlo and GEANT libraries +cojets, eurodec, geant321, herwig59, isajet758, pdflib804, photos202, phtools +.TP +.B Additional Monte Carlo libraries +(to obtain these, see /usr/share/doc/montecarlo\-base/README.Debian) +.br +ariadne, ariadne\-p5, fritiof, jetset, lepto, pythia5, pythia6 +.TP +.B Aliases +The numerals at the end may be left off most of the library names above. +.TP +.B Other library names +Various other names are recognized for backwards compatibility, internal use, +and non\-Linux architectures. For the complete list, please see the cernlib +script. +.TP +.B Other +Any names not recognized by cernlib that start with "\-l" or with +any character other than a hyphen ("\-") are output as \-l${name#\-l} +(\fIi.e.\fP, are assumed to be a library). Names starting with a hyphen for +which the second character is not "l" are assumed to be compiler flags, and are +output at the beginning of the line before all other output. +.SH SEE ALSO +.PP +.I /usr/share/doc/cernlib\-base/README.Debian +describes some of the changes that have been made to the CERN libraries in +order to comply with Debian policy and the Filesystem Hierarchy Standard. +.PP +CERNLIB documentation for all related libraries and programs is available +at the following URL: +.I http://cern.ch/cernlib/ +.SH AUTHOR +This manual page and the version of the cernlib script that it describes +were written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). They are +licensed under the GNU General Public License, version 2 or later (at your +choice). +.SH COPYRIGHT +Copyright (C) Kevin B. McCarty, 2002, 2003, 2004, 2005, 2006. --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/pawserv.8 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/pawserv.8 @@ -0,0 +1,36 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH PAWSERV 8 "February 3, 2003" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +pawserv \- CERNLIB program for serving PAW histograms remotely +.SH DESCRIPTION +.PP +\fBpawserv\fP is the server for distributed PAW. It listens +for connections on port 345. \fBpawserv\fP is not in general run from the +command line, but only via \fBinetd\fP(8). +From the PAW client side, a remote PAW session is invoked with the RLOGIN +.I hostname +command. Distributed PAW is documented fully in chapter 8 of +the PAW user's guide, available in PostScript format at this URL: +.PP +http://wwwinfo.cern.ch/asdoc/psdir/paw.ps.gz +.PP +Please note that \fBpawserv\fP receives unencrypted passwords over the network. +It should therefore be used only within a trusted LAN. +.SH FILES +.RI "\[bu] " /etc/inetd.conf +\- specifies how inetd should call pawserv +.SH SEE ALSO +.RB "\[bu] " paw (1) +.br +.RB "\[bu] " inetd (8) +.br +.RB "\[bu] " inetd.conf (5) +.PP +\fBpawserv\fP is part of the CERNLIB CSPACK package, which is documented at +http://wwwinfo.cern.ch/asdoc/psdir/cspack.ps.gz (PostScript) or +http://wwwinfo.cern.ch/asdoc/WWW/cspack/cspmain/cspmain.html (HTML). +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/hepmake.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/hepmake.1 @@ -0,0 +1,42 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH HEPMAKE 1 "September 25, 2002" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +hepmake \- program to do something +.SH SYNOPSIS +.B hepmake +.RI [ options ] " files" ... +.br +.B bar +.RI [ options ] " files" ... +.SH DESCRIPTION +This manual page documents briefly the +.B hepmake +and +.B bar +commands. +This manual page was written for the Debian distribution +because the original program does not have a manual page. +.PP +\fBhepmake\fP is a program that... +.SH OPTIONS +These programs follow the usual GNU command line syntax, with long +options starting with two dashes (`-'). +A summary of options is included below. +.TP +.B \-h, \-\-help +Show summary of options. +.TP +.B \-v, \-\-version +Show version of program. +.SH SEE ALSO +.BR bar (1), +.BR baz (1). +.br +The programs are documented fully by +.IR "The Rise and Fall of a Fooish Bar" , +available via the Info system. +.SH AUTHOR +This manual page was written by Kevin McCarty , +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/nypatchy.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/nypatchy.1 @@ -0,0 +1,91 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH NYPATCHY 1 "Mar 12, 2008" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +nypatchy \- tool to work with specialized\-format patches +.SH SYNOPSIS +.B nypatchy +.IR "pam fort cradle print cc as data " [ " fort2 cc2 as2 data2 " ] +.SH DESCRIPTION +.PP +\fBnypatchy\fP is a tool for working with Patchy Master Files (PAM files). +A PAM file is an ordinary text file (generally with a three\-letter extension +of ".car") that holds source code interleaved with +special pre\-processing instructions for \fBnypatchy\fP. The source code +may be in C, FORTRAN, assembly language, or a combination of these. +The pre\-processing instructions +allow one to maintain separate optional patches independently, for instance +in the case of architecture\-specific code. Details of the pre\-processing +commands used by \fBnypatchy\fP are beyond the scope of this man page; +the reader should refer to the full manual available from CERN. +.PP +Telling \fBnypatchy\fP which set of patches to use may be done on +standard input or via a so\-called \fIcradle file\fP. Typically the +cradle file will contain one or more +USE statements as well as +EXE +and +QUIT, for instance in the case of the isajet Monte Carlo generator: +.PP ++USE,*ISAJET +.br ++EXE +.br ++PAM +.br ++QUIT +.SH USAGE +.PP +In the command line shown above, \fIpam\fP is the PAM file, if any. +\fIfort\fP is the name of the primary output source code file, if any. +\fIcradle\fP is the name of the cradle file, if any +(default is standard input, for instance a here\-doc). +\fIprint\fP is the name of the file to receive printed output (the default +is standard output). \fIcc\fP, \fIas\fP, \fIdata\fP are the names of the +source code output files for data types CC, AS, DATA. The remaining parameters +are the source code output files to receive diverted material for respective +data types FORT, CC, AS, DATA. +.PP +Parameters may be omitted by substituting a dash \- for them. Trailing +parameters may be cut short by giving "." or ".go"; the latter commences +execution immediately rather than starting the \fBnypatchy\fP interactive +prompt. +.PP +\fBnypatchy\fP will return to the shell a code of 0 if successful, 1 if +there is a warning, and 2 if an error occurs. Since the program stops +creating output, but continues to run (in order to check for further errors) +if an error occurs, the user should be sure to test the error code $? after +any \fBnypatchy\fP run. +.SH EXAMPLES +.TP +nypatchy \-\- xyz .go +reads the cradle (instructions) from file \fIxyz.cra\fP, which must +list all other files to be used. +.TP +nypatchy .go << EOF + +.TP +EOF +.br +has the cradle given as a here\-document. +.TP +nypatchy zebra.car zebra.fca zebra.cra zebra.lis .go +reads the PAM file zebra.car, outputting the resulting source code to +zebra.fca, taking the cradle from zebra.cra, with printing done to +zebra.lis. +.SH SEE ALSO +.BR fcasplit "(1), " nycheck "(1), " nydiff "(1), " nyindex "(1), " +.BR nylist "(1), " nymerge "(1), " nyshell "(1), " nysynopt "(1), " +.BR nytidy "(1), " yexpand (1) +.PP +The reference manual for the Nypatchy suite of programs is available +in compressed PostScript format at the following URL: +.br +.I http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/p5refman.ps.gz +.PP +Running the command "nypatchy help .no" also gives some brief help on usage. +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). It is +licensed under the GNU General Public License, version 2 or later (at your +choice). +.SH COPYRIGHT +Copyright (C) Kevin B. McCarty, 2008. --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/nytidy.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/nytidy.1 @@ -0,0 +1,64 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH NYTIDY 1 "Mar 12, 2008" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +nytidy \- tool to clean up specialized\-format patches +.SH SYNOPSIS +.B nytidy +.IR "old new options" " [ " print " ] [ .go ]" +.SH DESCRIPTION +.PP +\fBnytidy\fP is a tool in the Nypatchy suite of programs +for working with Patchy Master Files (PAM files); +see \fBnypatchy\fP(1). Specifically, it will make a cleaned\-up copy +of a PAM file. Changes include removal of trailing whitespace on each line, +removal of trailing and leading comment lines (only in FORTRAN decks), +and update of some built\-in sequences. +.SH USAGE +The parameter \fIold\fP is the name of the original PAM file (a default +extension of ".car" is assumed), while \fInew\fP is the name of the new +cleaned PAM file to create. (If \fInew\fP is not given or is given as "\-" +then the original file will be overwritten; this may be dangerous.) +\fIprint\fP is the file to which informational messages should be +written (the default is standard output if omitted), and \fIoptions\fP is a +sequence of single\-character flags. +.PP +The command should be ended with ".go" unless one wants to enter the +Nypatchy interactive shell. +.SH OPTIONS +.PP +Note that options should be given as a single string of characters with +no space separation and no use of the \- character (except that it can be +used in place of the options field if no options are desired). Alphabetic +options are not case\-sensitive. +.TP +C +Assume the original file is a CMZ output file. +.TP +H +Print help information only. +.TP +V +"verbose" \- Print each change. +.TP ++ +Inhibit the initial page\-eject. +.SH SEE ALSO +.BR fcasplit "(1), " nycheck "(1), " nydiff "(1), " nyindex "(1), " +.BR nylist "(1), " nymerge "(1), " nypatchy "(1), " nyshell "(1), " +.BR nysynopt "(1), " yexpand (1) +.PP +The reference manual for the Nypatchy suite of programs is available +in compressed PostScript format at the following URL: +.br +.I http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/p5refman.ps.gz +.PP +Running the command "nytidy help .no" also gives some brief help on usage. +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). It is +licensed under the GNU General Public License, version 2 or later (at your +choice). +.SH COPYRIGHT +Copyright (C) Kevin B. McCarty, 2008. --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/kuesvr.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/kuesvr.1 @@ -0,0 +1,63 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH KUESVR 1 "March 4, 2005" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +kuesvr \- the CERN KUIP edit server +.SH SYNOPSIS +kuesvr \-p \fIpid\fP \-c \fIcmd\fP \-t \fItmpfile\fP [ \-e \fIeditor\fP ] \fIfile\fP +.SH DESCRIPTION +.PP +\fBkuesvr\fP is a small program called from KUIP. (KUIP stands +for Kit for a User Interface Package; it is part of the Packlib library +from CERN.) +\fBkuesvr\fP allows the user to call up an editor from within a KUIP program +(PAW, for instance) on the file given by \fIfile\fP, and continue to use the +program asynchronously. +.PP +In general \fBkuesvr\fP is not called directly from the +command line (in Debian it is not even located in the $PATH); instead it +will be run automatically from a KUIP program when an editor +is needed, as long as the command line set with KUIP's +HOST_EDITOR command ends with an ampersand ('&'), and $DISPLAY is set. +If $DISPLAY is unset (or, on non\-Debian systems, if \fBkuesvr\fP cannot be +found in $PATH), the ampersand will be ignored. For instance, +.PP +\fBPAW >\fP HOST_EDITOR 'emacs \-geometry 80x48 &' +.PP +The editor is expected to create its own graphical window. However, +since 'vi' is a frequent choice, setting HOST_EDITOR to 'vi &' will +automatically be interpreted as 'x\-terminal\-emulator \-e vi &' instead. +.PP +.SH OPTIONS +.TP +.BI "\-c " cmd +Specifies the KUIP command invoking the edit server. +.TP +.BI "\-e " editor +Specifies the editor to be used. By default it is vi. Even though this +flag is optional, it will be set anyway when \fBkuesvr\fP is called from +the KUIP library. +.TP +.BI "\-p " pid +Specifies the process ID of the calling program. +.TP +.BI "\-t " tmpfile +Specifies the name of the temporary file used for communication between +the calling program and the edit server. This is a Debian extension +added for security reasons. +It is a required argument, so this version of \fBkuesvr\fP will +not work with a KUIP application using CERN's unmodified Packlib; nor will +CERN's unmodified \fBkuesvr\fP work with the Debian version of Packlib. +.SH SEE ALSO +.RB "\[bu] " paw (1) +\- a program that can use the edit server +.br +\[bu] the KUIP online help available with command "help host_editor" +.br +\[bu] the KUIP manual, available at +.br + http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/kuip.ps.gz +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/nycheck.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/nycheck.1 @@ -0,0 +1,62 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH NYCHECK 1 "Mar 12, 2008" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +nycheck \- tool to check syntax of specialized\-format patches +.SH SYNOPSIS +.B nycheck +.IR "pam options" " [ " print " ] [ .go ]" +.SH DESCRIPTION +.PP +\fBnycheck\fP is a tool in the Nypatchy suite of programs +for working with Patchy Master Files (PAM files); +see \fBnypatchy\fP(1). Specifically, it is a syntax checker for these +files which is more strict than \fBnypatchy\fP itself. +.SH USAGE +The parameter \fIpam\fP is the name of the PAM file (a default extension +of ".car" is assumed), \fIprint\fP is the output file to write to +(the default is standard output if omitted), and \fIoptions\fP is a sequence +of single\-character flags. +.PP +The command should be ended with ".go" unless one wants to enter the +Nypatchy interactive shell. +.SH OPTIONS +.PP +Note that options should be given as a single string of characters with +no space separation and no use of the \- character (except that it can be +used in place of the options field if no options are desired). Alphabetic +options are not case\-sensitive. +.TP +H +Print help information only. +.TP +U +Print a warning if user\-defined types occur. +.TP +.I n +For \fIn\fP a number from 0 to 4 inclusive, assume 58, 62, 74, 84, or 98 lines +per page in the output. (The default is 110 lines per page.) For \fIn\fP +a number greater than or equal to 20, use that specific number of lines per +page. +.TP ++ +Inhibit the initial page\-eject. +.SH SEE ALSO +.BR fcasplit "(1), " nydiff "(1), " nyindex "(1), " +.BR nylist "(1), " nymerge "(1), " nypatchy "(1), " nyshell "(1), " +.BR nysynopt "(1), " nytidy "(1), " yexpand (1) +.PP +The reference manual for the Nypatchy suite of programs is available +in compressed PostScript format at the following URL: +.br +.I http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/p5refman.ps.gz +.PP +Running the command "nycheck help .no" also gives some brief help on usage. +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). It is +licensed under the GNU General Public License, version 2 or later (at your +choice). +.SH COPYRIGHT +Copyright (C) Kevin B. McCarty, 2008. --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/fcasplit.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/fcasplit.1 @@ -0,0 +1,101 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH FCASPLIT 1 "Mar 12, 2008" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +fcasplit \- tool to split source code into separate per\-routine files +.SH SYNOPSIS +.B fcasplit +.RI "[ \-f " nmft " ] [ \-c " nmcc " ] [ \-a " nmas " ] [\-noh] [\-log] " +.br +.RI " [ +fo " incf " ] [ +co " incc " ] [ +ao " incs " ]" +.br +.RI " [ \-fo " optf " ] [ \-co " optc " ] [ \-ao " opts " ] " file.ext +.PP +.B fcasplit +.IR file.ext " [ fca_n ] [ " optf " [ " optc " [ " opts +.br +.RI " [ " nmft " [ " nmcc " [ " nmas " ]]]]]]" +.SH DESCRIPTION +.PP +\fBfcasplit\fP, used with a command line of either form shown above, +splits file \fIfile.ext\fP having a mixture of FORTRAN / C / assembler +routines into separate files n.f or n.c or n.s, "n" being the +name of each routine, creating at the same time a shell script +\fIfile\fP.shfca and a Make file \fIfile\fP.mkfca either of which can be used +to compile all routines individually. All new files are generated in +the current directory, even if the original \fIfile.ext\fP is in a different +location. +.PP +NOTE that the program does not work on source code written without +having it in mind, since \fBfcasplit\fP looks for special identifying +lines in comments of the source code in the original file, as noted below. +It is able to operate, for instance, on source code output by +\fBnypatchy\fP. +.PP +Defaults are defined in \fBfcasplit\fP for the names by which the +compilers are called in the generated shell script and Makefile; +with the \-f, \-c, \-a options they could +be changed. In Debian GNU/Linux, these defaults are \fBgcc\fP +for the C compiler, +\fBgfortran\fP for the FORTRAN compiler, and \fBas\fP for the assembler. +.PP +Defaults are also defined for the options with which they are +called; with the \-fo, \-co, \-ao options they can be re\-defined; +with the +fo, +co, +ao options they can be incremented. +In Debian GNU/Linux, these defaults are "\-c \-g \-O2" for the C compiler, +"\-c \-g \-O2 \-fno\-automatic" for the FORTRAN compiler, and "" (i.e., +no flags) for the assembler. +.PP +To be backward compatible these options can also be specified by +the positional parameters after the file\-name (as in the second form +of the command shown above). +.PP +If the \-noh option is given (or if the first parameter after +the file\-name is "fca_n") the identifying header line of each +routine is not written out. If the \-log option is given +the name of each routine is printed on standard output. +.SH FILE FORMAT +Each routine in the original file \fIfile.ext\fP +must start with an identifying line: +.br + "CDECK ID>, " in cols. 1\-12 for FORTRAN +.br + "/*DECK ID>, " in cols. 1\-12 for C +.br + ";DECK ID>, " in cols. 1\-12 for assembler +.br + "DECK ID>, " in cols. 2\-12 or +.br + "DECK ID>, " in cols. 3\-12 for anything else +.br + "name" in cols. 13\-40 gives the name +.br +.PP +In the last two cases, or if "name" contains an +extension, the file created will be "name" +without extension .f, .c or .s added to it +and without an entry into the script. +.PP +A trailing blank terminates the name, +symbol . followed by blank also terminates, +symbols ; < # ! all terminate, +symbol */ also terminates. +.SH SEE ALSO +.BR nycheck "(1), " nydiff "(1), " nyindex "(1), " +.BR nylist "(1), " nymerge "(1), " nypatchy "(1), " +.BR nyshell "(1), " nysynopt "(1), " nytidy "(1), " yexpand (1) +.PP +The reference manual for the Nypatchy suite of programs is available +in compressed PostScript format at the following URL: +.br +.I http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/p5refman.ps.gz +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others), based on +the help information printed by the \fBfcasplit\fP program when called +with no arguments. Both \fBfcasplit\fP and this man page are +licensed under the GNU General Public License, version 2 or later (at your +choice). +.SH COPYRIGHT +Copyright (C) CERN, 1996, 1999 and Kevin B. McCarty, 2008. --- cernlib-2006.dfsg.2.orig/debian/add-ons/manpages/nylist.1 +++ cernlib-2006.dfsg.2/debian/add-ons/manpages/nylist.1 @@ -0,0 +1,66 @@ +.\" Hey, EMACS: -*- nroff -*- +.TH NYLIST 1 "Mar 12, 2008" +.\" Please adjust this date whenever revising the manpage. +.\" +.SH NAME +nylist \- tool to list contents of specialized\-format patches +.SH SYNOPSIS +.B nylist +.IR "pam options" " [ " print " ] [ .go ]" +.SH DESCRIPTION +.PP +\fBnylist\fP is a tool in the Nypatchy suite of programs +for working with Patchy Master Files (PAM files); +see \fBnypatchy\fP(1). Specifically, it can print a listing (including +line numbers) of the contents of these files. +.SH USAGE +The parameter \fIpam\fP is the name of the PAM file (a default extension +of ".car" is assumed), \fIprint\fP is the output file to write to +(the default is standard output if omitted), and \fIoptions\fP is a sequence +of single\-character flags. +.PP +The command should be ended with ".go" unless one wants to enter the +Nypatchy interactive shell. +.SH OPTIONS +.PP +Note that options should be given as a single string of characters with +no space separation and no use of the \- character (except that it can be +used in place of the options field if no options are desired). +Alphabetic options are not case\-sensitive. +.TP +E +Page ejects forced in the PAM file with +SEQ,QEJECT are honored (only if the +S option is also given). +.TP +H +Print help information only. +.TP +S +Start each new deck on a new page. +.TP +.I n +For \fIn\fP a number from 0 to 4 inclusive, assume 58, 62, 74, 84, or 98 lines +per page in the output. (The default is 110 lines per page.) For \fIn\fP +a number greater than or equal to 20, use that specific number of lines per +page. +.TP ++ +Inhibit the initial page\-eject. +.SH SEE ALSO +.BR fcasplit "(1), " nycheck "(1), " nydiff "(1), " nyindex "(1), " +.BR nymerge "(1), " nypatchy "(1), " nyshell "(1), " +.BR nysynopt "(1), " nytidy "(1), " yexpand (1) +.PP +The reference manual for the Nypatchy suite of programs is available +in compressed PostScript format at the following URL: +.br +.I http://wwwasdoc.web.cern.ch/wwwasdoc/psdir/p5refman.ps.gz +.PP +Running the command "nylist help .no" also gives some brief help on usage. +.SH AUTHOR +This manual page was written by Kevin McCarty +for the Debian GNU/Linux system (but may be used by others). It is +licensed under the GNU General Public License, version 2 or later (at your +choice). +.SH COPYRIGHT +Copyright (C) Kevin B. McCarty, 2008. --- cernlib-2006.dfsg.2.orig/debian/add-ons/app-defaults/KXterm +++ cernlib-2006.dfsg.2/debian/add-ons/app-defaults/KXterm @@ -0,0 +1,14 @@ +! Use light gray widgets instead of the hideous default blue +KXterm*background: gray +KXterm*foreground: black + +! and decent fonts instead of "fixed" +KXterm*fontList: *-helvetica-medium-r-normal*-120-* +KXterm*XmText*fontList: *-courier-medium-r-normal*-120-* + +! and make the transcript pad a reasonable size +KXterm*outputForm.height: 200 + +! and give the window a logical name +KXterm*kuipIo_shell.title: KXterm +KXterm*kuipIo_shell.iconName: KXterm --- cernlib-2006.dfsg.2.orig/debian/add-ons/vim/registry/cernlib-base.yaml +++ cernlib-2006.dfsg.2/debian/add-ons/vim/registry/cernlib-base.yaml @@ -0,0 +1,7 @@ +addon: cernlib-base +description: "file detection and syntax highlighting for CERNLIB file types" +files: + - ftdetect/kuip.vim + - ftdetect/kumac.vim + - syntax/kuip.vim + - syntax/kumac.vim --- cernlib-2006.dfsg.2.orig/debian/add-ons/vim/addons/ftdetect/kuip.vim +++ cernlib-2006.dfsg.2/debian/add-ons/vim/addons/ftdetect/kuip.vim @@ -0,0 +1,5 @@ +" Vim syntax file +" Language: CERNLIB KUIPC (Kit for a User Interface Compiler) CDF files +" Maintainer: Kevin B. McCarty + +au BufNewFile,BufRead *.cdf set filetype=kuip --- cernlib-2006.dfsg.2.orig/debian/add-ons/vim/addons/ftdetect/kumac.vim +++ cernlib-2006.dfsg.2/debian/add-ons/vim/addons/ftdetect/kumac.vim @@ -0,0 +1,7 @@ +" Vim syntax file +" Language: CERNLIB kumac (Kit for a User interface MACro) files (for PAW) +" Maintainer: Kevin B. McCarty + +au BufNewFile,BufRead *.kumac set filetype=kumac +au BufNewFile,BufRead *.kumacold set filetype=kumac +au BufNewFile,BufRead .kumacs set filetype=kumac --- cernlib-2006.dfsg.2.orig/debian/add-ons/vim/addons/syntax/kuip.vim +++ cernlib-2006.dfsg.2/debian/add-ons/vim/addons/syntax/kuip.vim @@ -0,0 +1,94 @@ +" Vim syntax file +" Language: CERNLIB KUIPC (Kit for a User Interface Compiler) CDF files +" Maintainer: Kevin B. McCarty + +" Standard syntax initialization +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +" Case doesn't matter for us +syn case ignore + +" generic definitions +syn match kuipDirective contained "^>\(Name\|menu\|command\|help_item\|guidance\|user_help\|parameters\|keyword\|action\|class\|graphics\|browse\|Icon_bitmaps\|Motif_customize\|Button\)" +syn region kuipArgument contained start=" " skip="_$" end="$" contains=kuipString,kuipParameterFormat +syn region kuipDefinition start="^>[^*]" skip="_$" end="$" contains=kuipDirective,kuipArgument keepend +syn match kuipNumber contained "\m[+-]\?\([0-9]\+\(\.[0-9]*\|\)\|\.[0-9]\+\)\(e[+-]\?[0-9]\+\)\?" +syn match kuipParseError "^\s*[^>*[:space:]].*$" +syn match kuipEmpty contained "^\s*$" +syn region kuipString start="'" skip="_$" end="\('\|$\)" + +" comments +syn region kuipComment start="^\*" skip="_$" end="$" +syn region kuipBlockComment start="^>\*" end="^>"me=s-1 + +" informational text +syn region kuipGuidanceBlock start="^>\(Guidance\|Keyword\)\s*$" end="^>"me=s-1 contains=kuipDirective,kuipComment,kuipGuidanceSpacer +syn match kuipGuidanceSpacer contained "^\.\s*$" + +" block of parameters +syn region kuipParametersBlock start="^>Parameters\s*$" end="^>"me=s-1 contains=kuipDirective,kuipParameterName,kuipParameterOption,kuipComment,kuipParameterFormat,kuipEmpty keepend +syn match kuipType contained "\s[CIR]\(\s\|$\)" +syn match kuipParameterFormat contained "\(^+\(\|+\)$\|^-\|%c\)" +syn match kuipParameterFormat2 contained ".\*"ms=s+1 +syn match kuipParameterDefault contained "\([DR]\|Slider\)="me=e-1 +syn keyword kuipParameterKeywords contained option loop vararg separate minus +syn region kuipParameterName contained start="^[a-z]" end="\s\S"me=s-1 nextgroup=kuipParameterDef contains=kuipParameterFormat,kuipParameterFormat2 oneline +syn region kuipParameterOption contained start="^-" end="\s\S"me=s-1 nextgroup=kuipParameterOptionDesc oneline +syn region kuipParameterDef contained start="[^*>+\s]" skip="_$" end="$" contains=kuipString,kuipType,kuipParameterDefault,kuipNumber,kuipParameterKeywords +syn region kuipParameterOptionDesc contained start="[^*>+\s]" skip="_$" end="$" + +" block of browser or class statement +syn region kuipClassBlock start="^>\(Class\|Browse\)\(\s\|$\)" end="^>"me=s-1 contains=kuipDefinition,kuipMenuItem,kuipComment,kuipEmpty keepend +syn region kuipMenuItem contained start="^[^>*]" skip="_$" end="$" contains=kuipMenuString,kuipString,kuipParameterFormat,kuipMenuSpecial +syn match kuipMenuSpecial contained "\(\s\|^\)[/!]\+" +syn region kuipMenuString contained start="^[[:space:]/!]*[']"ms=e skip="_$" end="\($\|'\)" contains=kuipMenuSpecialString +syn match kuipMenuSpecialString contained "['][/!]\+"ms=s+1 + +" block of xpm icon data +syn include @kuipC syntax/c.vim +syn region kuipIconBitmapsBlock start="^>Icon_bitmaps\s*$" end="^>"me=s-1 contains=kuipDirective,@kuipC + +" Associate our matches and regions with pretty colours +if version >= 508 || !exists("did_kuip_syn_inits") + if version < 508 + let did_kuip_syn_inits = 1 + command -nargs=+ HiLink hi link + else + command -nargs=+ HiLink hi def link + endif + + HiLink kuipComment Comment + HiLink kuipBlockComment Comment + HiLink kuipDirective Statement + HiLink kuipArgument Identifier + HiLink kuipString String + HiLink kuipGuidanceBlock Normal + HiLink kuipGuidanceSpacer SpecialChar + HiLink kuipEmpty Normal + HiLink kuipParametersBlock Error + HiLink kuipParametersDef Normal + HiLink kuipParameterFormat SpecialChar + HiLink kuipParameterFormat2 SpecialChar + HiLink kuipMenuSpecial SpecialChar + HiLink kuipParameterName Identifier + HiLink kuipParameterDefault Statement + HiLink kuipParameterKeywords Statement + HiLink kuipParameterOption Special + HiLink kuipParameterOptionDesc String + HiLink kuipMenuItem Identifier + HiLink kuipMenuString String + HiLink kuipMenuSpecialString SpecialChar + HiLink kuipNumber Number + HiLink kuipType Type + HiLink kuipParseError Error + + delcommand HiLink +endif + +let b:current_syntax = "kuip" + +" vim: ts=8 sw=2 --- cernlib-2006.dfsg.2.orig/debian/add-ons/vim/addons/syntax/kumac.vim +++ cernlib-2006.dfsg.2/debian/add-ons/vim/addons/syntax/kumac.vim @@ -0,0 +1,105 @@ +" Vim syntax file +" Language: CERNLIB kumac (Kit for a User interface MACro) files (for PAW) +" Maintainer: Kevin B. McCarty + +" Standard syntax initialization +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +" Case doesn't matter for us +syn case ignore + +" Only match keywords if they don't include a '/' +setlocal iskeyword+=/ + +syn region kumacComment start="^\s*\*" skip="_$" end="$" keepend +syn region kumacCommand start="^\s*[a-z0-9_/]\+\s*[^=]" skip="_$" end="$" keepend contains=kumacInlineComment,kumacLocalVariable,kumacSystemFunction,kumacString,kumacBoolean,kumacFortranOperator,kumacOperator,kumacNumber,kumacNumberEnd,kumacFor,kumacBlockBegin,kumacBlockEnd,kumacKeyword +syn region kumacAssignment start="^\s*\(sigma\|do\|\)\s*[a-z0-9_]\+\s*[=]" skip="_$" end="$" keepend contains=kumacVariableAssign,kumacLocalVariable,kumacSystemFunction,kumacInlineComment,kumacString,kumacBoolean,kumacFortranOperator,kumacOperator,kumacNumber,kumacNumberEnd,kumacMessage,kumacRead,kumacKeyword,kumacBlockBegin +syn match kumac1Command "^\s*[a-z0-9_/]\+\s*$" contains=kumacKeyword,kumacBlockEnd + +syn region kumacApplication matchgroup=kumacApplicationStart start="^\s*appl\(i\(c\(a\(t\(i\(o\(n\|\)\|\)\|\)\|\)\|\)\|\)\|\)\s\+[a-z]\+\s\+\z(\S\+\)\s*$" matchgroup=kumacApplicationStop end="^\s*\z1\s*$" contains=kumacAssignment,kumacNumber,kumacNumberEnd + +syn include @kumacFortran syntax/fortran.vim +syn region kumacFortranComment contained start="^\S" end="$" oneline +syn region kumacComisDirective contained start="!\s*\(file\|setopt\)\s\+" end="$" oneline +syn region kumacComisBlock matchgroup=kumacComisStart start="^\s*appl\(i\(c\(a\(t\(i\(o\(n\|\)\|\)\|\)\|\)\|\)\|\)\|\)\s\+comis\s\+\z(\S\+\)\s*$" matchgroup=kumacComisStop end="^\s*\z1\s*$" contains=@kumacFortran,kumacFortranComment,kumacFortranVector,kumacComisDirective +syn keyword kumacFortranVector contained vector + +syn region kumacInlineComment start="[|]" skip="_$" end="$" +syn region kumacString start="'" skip="\(_$\|''\)" end="'" +syn match kumacLocalVariable "[^a-z0-9_]\@<=\[\([a-z_][a-z_0-9]*\|[0-9]\+\|@\|#\|\*\)\]" +syn match kumacVariableAssign contained "\(\(sigma\|do\)\?\)\@<=\s*[a-z0-9_]\+\s*[=]"me=e-1 +syn match kumacSystemFunction "[$][a-z_0-9]\+" +syn match kumacFor contained "\(for\|case\) \S\+ in" contains=kumacForKeyword,kumacSystemFunction + +syn keyword kumacForKeyword contained case for in +syn keyword kumacBlockBegin contained if then elseif else do while repeat +syn keyword kumacBlockEnd contained else endif endfor enddo endwhile endcase until breakl nextl + +syn region kumacMessage start="^\s*mess\(a\(g\(e\|\)\|\)\|\)\(\s\|$\)" skip="_$" end="$" contains=kumacMessKeyword,kumacInlineComment,kumacString,kumacLocalVariable,kumacSystemFunction +syn keyword kumacMessKeyword contained mess[age] +syn region kumacRead start="^\s*read\s" skip="_$" end="$" contains=kumacReadVariable,kumacInlineComment +syn region kumacReadVariable contained start="^\s*read\s" skip="_$" end="[a-z_][a-z0-9_]*\s" contains=kumacReadKeyword +syn keyword kumacReadKeyword contained read + +syn keyword kumacKeyword contained macro return exec goto call exitm stopm sh[ell] sigma exit cd[ir] +syn match kumacGotoLabel "^\s*[a-z_][a-z0-9_]*:" + +syn keyword kumacEndKeyword contained endkumac +syn region kumacEndComment start="^\s*endkumac\s*$" end="\%$" contains=kumacEndKeyword + +syn match kumacFortranOperator "\.\(not\|or\|and\|eq\|ne\|ge\|le\|gt\|lt\)\." +syn match kumacBoolean "\.\(true\|false\)\." +syn match kumacNumber contained "\(^\|[^a-z0-9]\)\@<=\([0-9]\+\(\.[0-9]*\|\)\|\.[0-9]\+\)\(e[+-]\?[0-9]\+\)\?[^a-z0-9.]"me=e-1 +syn match kumacNumberEnd contained "\(^\|[^a-z0-9]\)\@<=\([0-9]\+\(\.[0-9]*\|\)\|\.[0-9]\+\)\(e[+-]\?[0-9]\+\)\?$" + +" Associate our matches and regions with pretty colours +if version >= 508 || !exists("did_kuip_syn_inits") + if version < 508 + let did_kuip_syn_inits = 1 + command -nargs=+ HiLink hi link + else + command -nargs=+ HiLink hi def link + endif + + HiLink kumacComment Comment + HiLink kumacInlineComment Comment + HiLink kumacFortranComment Comment + HiLink kumacString String + HiLink kumacLocalVariable Identifier + HiLink kumacVariableAssign Identifier + HiLink kumacReadVariable Identifier + HiLink kumacMessage String + HiLink kumacMessKeyword Statement + HiLink kumacRead String + HiLink kumacReadKeyword Statement + HiLink kumacSystemFunction Special + HiLink kumacBlockBegin Statement + HiLink kumacBlockEnd Statement + HiLink kumacForKeyword Statement + HiLink kumacKeyword Statement + HiLink kumacFor Identifier + HiLink kumacGotoLabel Special + HiLink kumacOperator Special + HiLink kumacFortranOperator Special + HiLink kumacBoolean Number + HiLink kumacNumber Number + HiLink kumacNumberEnd Number + HiLink kumacApplicationStart Error + HiLink kumacApplicationStop Error + HiLink kumacComisStart Error + HiLink kumacFortranVector Type + HiLink kumacComisDirective Error + HiLink kumacComisStop Error + HiLink kumacEndKeyword Statement + HiLink kumacEndComment Comment + + delcommand HiLink +endif + +let b:current_syntax = "kumac" + +" vim: ts=8 sw=2 --- cernlib-2006.dfsg.2.orig/debian/add-ons/icons/kxterm48x48.xpm +++ cernlib-2006.dfsg.2/debian/add-ons/icons/kxterm48x48.xpm @@ -0,0 +1,56 @@ +/* XPM */ +static char * kxterm_xpm[] = { +"48 48 5 1", +" c None", +". c #000000", +"+ c #FFFFFF", +"@ c #E3E3E3", +"# c #8E8E8E", +" ", +" ......................... ", +" ...++++++++++++++++++++++++.. ", +" ...++++++++++++++++++++++++++++.. ", +" ...+@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+.. ", +" .+++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@++. ", +" .+##################################. ", +" .+##################################. ", +" .+##..............................##. ", +" .+##.............................+##. ", +" .+##..+++++++++++++++++..........+##. ", +" .+##..+...............+..........+##. ", +" .+##..+.............+.+..........+##. ", +" .+##..+...............+..........+##. ", +" .+##..+...............+..........+##. ", +" .+##..+++++++++++++++++..........+##. ", +" .+##..+...............+..........+##. ", +" .+##..+.+++.........+.+..........+##. ", +" .+##..+...............++++++++++.+##. ", +" .+##..+...............+........+.+##. ", +" .+##..+...............+........+.+##. ", +" .+##..+++++++++++++++++........+.+##. ", +" .+##.............+.............+.+##. ", +" .+##.............+.............+.+##. ", +" .+##.............+.+++.........+.+##. ", +" .+##.............+.............+.+##. ", +" .+##.............+++++++++++++++.+##. ", +" .+##.............................+##. ", +" .+##.............................+##. ", +" .+##.............................+##. ", +" .+##.+++++++++++++++++++++++++++++##. ", +" .+##################################. ", +" .+##################################. ", +" ................................... ", +" ...................... ", +" ........ ...... ", +" ................................. ", +" ..+++++++++++++++++++++++++++++++. ", +" ..++++.+.+.+.+.+.+.+.+.++++.+.+.+++. ", +" ..++++.+.+.+.+.+.+.+.+.+.++++.+.+.+++. ", +" ..++++.+.+.+.+.+.+.+.+.+.+.++++.+.+.+++. ", +" ..++++.+.+.+.+.+.+.+.+.+.+.+.++++.+.+.+++. ", +" ..++++.+.+.+++++++++++++++++.+.++++.+.+.+++. ", +" .+++++++++++++++++++++++++++++++++++++++++++. ", +" .###########################################. ", +" .###########################################. ", +" ............................................. ", +" "}; --- cernlib-2006.dfsg.2.orig/debian/add-ons/icons/kxterm.xbm +++ cernlib-2006.dfsg.2/debian/add-ons/icons/kxterm.xbm @@ -0,0 +1,33 @@ +#define kxterm_width 50 +#define kxterm_height 50 +static char kxterm_bits[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xf0, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x1c, 0x00, + 0x00, 0x60, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x80, 0x01, 0x00, 0xc0, + 0x55, 0x55, 0x55, 0x55, 0x06, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x04, + 0x00, 0x40, 0x55, 0x55, 0x55, 0x55, 0x05, 0x00, 0x40, 0xaa, 0xaa, 0xaa, + 0xaa, 0x06, 0x00, 0x40, 0xfd, 0xff, 0xff, 0xff, 0x05, 0x00, 0x40, 0xfe, + 0xff, 0xff, 0x7f, 0x06, 0x00, 0x40, 0x0d, 0x00, 0xe0, 0x7f, 0x05, 0x00, + 0x40, 0xee, 0xff, 0xef, 0x7f, 0x06, 0x00, 0x40, 0xed, 0xff, 0xeb, 0x7f, + 0x05, 0x00, 0x40, 0xee, 0xff, 0xef, 0x7f, 0x06, 0x00, 0x40, 0xed, 0xff, + 0xef, 0x7f, 0x05, 0x00, 0x40, 0x0e, 0x00, 0xe0, 0x7f, 0x06, 0x00, 0x40, + 0xed, 0xff, 0xef, 0x7f, 0x05, 0x00, 0x40, 0x2e, 0xfe, 0xeb, 0x7f, 0x06, + 0x00, 0x40, 0xed, 0xff, 0x0f, 0x40, 0x05, 0x00, 0x40, 0xee, 0xff, 0xef, + 0x5f, 0x06, 0x00, 0x40, 0xed, 0xff, 0xef, 0x5f, 0x05, 0x00, 0x40, 0x0e, + 0x00, 0xe0, 0x5f, 0x06, 0x00, 0x40, 0xfd, 0x7f, 0xff, 0x5f, 0x05, 0x00, + 0x40, 0xfe, 0x7f, 0xff, 0x5f, 0x06, 0x00, 0x40, 0xfd, 0x7f, 0xf1, 0x5f, + 0x05, 0x00, 0x40, 0xfe, 0x7f, 0xff, 0x5f, 0x06, 0x00, 0x40, 0xfd, 0x7f, + 0x00, 0x40, 0x05, 0x00, 0x40, 0xfe, 0xff, 0xff, 0x7f, 0x06, 0x00, 0x40, + 0xfd, 0xff, 0xff, 0x7f, 0x05, 0x00, 0x40, 0xfe, 0xff, 0xff, 0x7f, 0x06, + 0x00, 0x40, 0x05, 0x00, 0x00, 0x00, 0x05, 0x00, 0x40, 0xaa, 0xaa, 0xaa, + 0xaa, 0x06, 0x00, 0x40, 0x55, 0x55, 0x55, 0x55, 0x05, 0x00, 0x80, 0xff, + 0xff, 0xff, 0xff, 0x03, 0x00, 0x00, 0xc0, 0xff, 0xff, 0x0f, 0x00, 0x00, + 0x00, 0xe0, 0x1f, 0xc0, 0x0f, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0x01, 0x00, 0x80, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0xc0, 0x50, 0x55, + 0x15, 0x2a, 0x02, 0x00, 0x60, 0xa8, 0xaa, 0x2a, 0x54, 0x04, 0x00, 0x30, + 0x54, 0x55, 0x55, 0xa8, 0x08, 0x00, 0x18, 0xaa, 0xaa, 0xaa, 0x50, 0x11, + 0x00, 0x0c, 0x15, 0x00, 0x40, 0xa1, 0x22, 0x00, 0x04, 0x00, 0x00, 0x00, + 0x00, 0x40, 0x00, 0xac, 0xaa, 0xaa, 0xaa, 0xaa, 0x6a, 0x00, 0x54, 0x55, + 0x55, 0x55, 0x55, 0x55, 0x00, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00}; --- cernlib-2006.dfsg.2.orig/debian/add-ons/icons/kxterm32x32.xpm +++ cernlib-2006.dfsg.2/debian/add-ons/icons/kxterm32x32.xpm @@ -0,0 +1,40 @@ +/* XPM */ +static char * kxterm2_xpm[] = { +"32 32 5 1", +" c None", +". c #000000", +"+ c #FFFFFF", +"@ c #E3E3E3", +"# c #8E8E8E", +" ", +" ................... ", +" ..+++++++++++++++++++.. ", +" .+@@@@@@@@@@@@@@@@@@@@++. ", +" .+######################. ", +" .+#....................#. ", +" .+#.++++++++++++......+#. ", +" .+#.+..........+......+#. ", +" .+#.+........+.+......+#. ", +" .+#.+..........+......+#. ", +" .+#.++++++++++++......+#. ", +" .+#.+..........+......+#. ", +" .+#.+.++.....+.++++++.+#. ", +" .+#.+..........+....+.+#. ", +" .+#.++++++++++++....+.+#. ", +" .+#........+........+.+#. ", +" .+#........+.++.....+.+#. ", +" .+#........+........+.+#. ", +" .+#........++++++++++.+#. ", +" .+#...................+#. ", +" .+#++++++++++++++++++++#. ", +" .+######################. ", +" ....................... ", +" ...... .... ", +" ....................... ", +" .+++++++++++++++++++++. ", +" ..++.+.+.+.+.+.+.+++.+.++.. ", +" .++.+.+.+.+.+.+.+.+++.+.++. ", +" .++.+.+.+++++++++.+.+++.+.++. ", +" .############################. ", +" .............................. ", +" "}; --- cernlib-2006.dfsg.2.orig/debian/add-ons/scripts/makedeplist +++ cernlib-2006.dfsg.2/debian/add-ons/scripts/makedeplist @@ -0,0 +1,105 @@ +#!/bin/bash + +# This script creates lists of all the dependencies and symbols required +# by each shared library in $CERNLEVEL/shlib and program in $CERNLEVEL/bin. +# Should be run while in the top-level cernlib- source dir. + +errormsg() { + echo "Not in correct directory or cernlib not compiled with shlibs" + exit 1 +} + +# remove old files +for file in `(ls -1 *.txt) 2> /dev/null` libdeps bindeps ; do + rm -rf $file +done +if [ ! -d shlib ] ; then errormsg ; fi + +mkdir -p libdeps +[ -d bin ] && mkdir -p bindeps + +# add in several other of the usual suspects +cd shlib +ln -sf /lib/libc.so.6 ./libc.so +ln -sf /lib/libm.so.6 ./libm.so +ln -sf /usr/lib/libgfortran.so +ln -sf /usr/lib/libcrypt.so +ln -sf /usr/lib/libdl.so +ln -sf /usr/lib/libblas.so +ln -sf /usr/lib/liblapack.so +ln -sf /usr/lib/libXm.so +for file in /usr/X11R6/lib/libX*.so ; do + ln -sf $file +done + +# create symbol lists... +for lib in lib*.so ; do + if [ -z "`ls -l $lib | egrep -- '-> (/usr(|/X11R6|/local)|)/lib/'`" ] ; then + nm -D $lib | fgrep ' U ' | awk '{print $2}' > ../${lib%%.so}.undef.txt + fi + nm -D $lib | fgrep -v ' U ' | sed 's/@@.*$//g' | \ + awk '{print $3}' > ../${lib%%.so}.def.txt +done + +if [ -d "../bin" ] ; then + cd ../bin + for prog in * ; do + if [ -n "`nm -D $prog 2> /dev/null`" ] ; then + nm -D $prog | fgrep ' U ' | awk '{print $2}' \ + | sed 's/@@.*$//g' > ../$prog.undef.txt + fi + done +fi + +# create lists of symbol dependencies +cd .. +for symlist in *.undef.txt ; do + ( + for symbol in `cat $symlist` ; do + grep '^'$symbol'$' *.def.txt + done + ) | tr ':.' ' ' | awk '{print $1 " " $4}' | sort | \ + grep -v '^libc ' >> ${symlist%%.undef.txt}.symdeps.txt +done + +cat *.def.txt > defined.txt + +for symlist in *.undef.txt ; do + ( + for symbol in `cat $symlist` ; do + if [ -z "`grep -l '^'$symbol'$' defined.txt`" ] ; then + echo $symbol + fi + done + ) | c++filt | sort > ${symlist%%.undef.txt}.unknown.txt +done + +# delete unneeded files +rm -f defined.txt *.def.txt *.undef.txt +for file in shlib/lib*.so ; do + if [ -n "`ls -l $file | egrep -- '-> (/usr(|/X11R6|/local)|)/lib/'`" ] ; then + libname=${file##shlib/} + rm -f ${libname%%.so}.*.txt + fi +done + +# create lists of file dependencies with number of dependent symbols +for file in *.symdeps.txt ; do + tempfile=${file%%.symdeps.txt}.filedeps.txt.tmp + awk '{ print $1 }' < $file | sort | uniq > $tempfile + for file2 in `cat $tempfile` ; do + echo "$file2 `grep $file2 $file | wc -l`" >> ${tempfile%%.tmp} + done + rm -f $tempfile + c++filt < $file | sort > $file.tmp + mv -f $file.tmp $file +done + +# move to proper places +mv lib*.txt libdeps/ +[ -d bindeps ] && mv *.txt bindeps/ +for file in libdeps/* bindeps/* ; do + [ ! -s $file ] && rm -f $file +done + +exit 0 --- cernlib-2006.dfsg.2.orig/debian/add-ons/scripts/libcomp +++ cernlib-2006.dfsg.2/debian/add-ons/scripts/libcomp @@ -0,0 +1,34 @@ +#!/bin/bash + +# libcomp - Script to check whether the size of library symbols has +# changed between versions. For checking ABI compatibility. +# Requires the "bc" and "binutils" packages to be installed. + +# Arguments: $1 - old library; $2 - new library + +OLD="`nm -D "$1" | egrep '^[0-9]' | sort`" +NEW="`nm -D "$2" | egrep '^[0-9]' | sort`" + +prevaddr=0 +prevname="" +echo "$OLD" | while read addr type name ; do + size=`( echo ibase=16 ; echo $addr - $prevaddr | tr 'a-z' 'A-Z' ) | bc` + #echo $prevname $size + + newlines="`echo "$NEW" | grep --after-context=1 '[[:space:]]'$prevname'$'`" + #echo "$newlines" ; echo --- + if [ -z "$newlines" ] ; then + echo $prevname: not found in new lib + else + newprevaddr=`echo "$newlines" | head -n 1 | awk '{print $1}'` + newaddr=`echo "$newlines" | tail -n 1 | awk '{print $1}'` + newsize=`( echo ibase=16 ; + echo $newaddr - $newprevaddr | tr 'a-z' 'A-Z' ) | bc` + if [ ! "$newsize" = "$size" ] ; then + echo $prevname: oldsize $size, newsize $newsize + fi + fi + prevname=$name + prevaddr=$addr +done + --- cernlib-2006.dfsg.2.orig/debian/add-ons/scripts/README +++ cernlib-2006.dfsg.2/debian/add-ons/scripts/README @@ -0,0 +1,52 @@ +Nothing in this directory is needed for compiling or building packages. +It's just a few simple scripts that make my life easier when trying to debug +library dependencies. + +makedeplist (no arguments) +-------------------------- + +When run in the top-level cernlib source directory after a compilation (note +that DEB_BUILD_OPTIONS must have been set to "nostrip"), this script will +produce directories bindeps and libdeps. These contain files like this: + +- XXX.symdeps.txt is a list of undefined symbols in a binary or shlib XXX, + found in another CERNLIB library +- XXX.filedeps.txt is a summary of XXX.symdeps.txt (just gives the number + of symbols found in each depending library) + +Note that some symbols may be found in more than one library, so the filedeps +file may list unnecessary dependencies. Symbols not found in any library +linked into the shlib directory are listed (for each library and binary) in a +file XXX.not-in-cernlib.txt . + +If you want to include non-CERNLIB libraries in the output, symlink to them +from the shlib directory, e.g. shlib/libX11.so -> /usr/X11R6/lib/libX11.so +This is in fact already done automatically for most of the "usual suspects", +libg2c, libc, libm, libdl, libcrypt, and libX*. + +findsym {has|needs|requiredby} [ ] +------------------------------------------------------- + +This script will find needed symbols recursively in any .o, .a, or .so files in +a directory. "findsym has " searches for object files that provide a +given symbol. "findsym needs " searches for object files that have the +symbol undefined. "findsym requiredby " prints a list of symbols +needed by object files that define the given symbol; this command works best +with object files or shared libs. + +An optional third argument specifies the starting directory ("." by default). +Thus, seeing that a file contains the symbol XBell, we run (using an ingenious +guess for the starting directory) "./findsym has XBell /usr/X11R6/lib" to +determine that this symbol is found in libX11.so. + +libcomp +------------------------- + +This script compares the symbols exported by two dynamic libraries that are +supposed to be different versions of the same library. Any symbols in the +first-specified library that are not present in the second-specified library, +or have a different size, are noted. The intent is to check for preservation +of ABI compatibility. + + +--Kevin McCarty --- cernlib-2006.dfsg.2.orig/debian/add-ons/scripts/findsym +++ cernlib-2006.dfsg.2/debian/add-ons/scripts/findsym @@ -0,0 +1,54 @@ +#!/bin/bash + +# find where a symbol is defined +# argument 1: "has" == what object provides a given symbol? +# "needs" == what object requires a given symbol? +# "requiredby" == what symbols are required by an object +# providing a given symbol? +# argument 2: the symbol to search for +# argument 3: directory to search in ("." if omitted) + + +printresult() { +# printresult: arg1 = file, arg2 = search pattern + local NM=nm + [ -n "`echo "$1" | egrep '\.so(\.|$)'`" ] && NM="nm -D" + local results="`$NM "$1" 2> /dev/null | egrep "$2"`" + [ -n "$results" ] && echo "$results" | sed "s,^,$1: ,g" +} + +dir=. +[ -n "$3" ] && dir="$3" +files="find '$dir' -type f -a \ + \( -name \*.o -o -name \*.a -o -name \*.so -o -name \*.so.\* \)" + +find_has() { + search='[^U]'" $1"'$' + for x in `eval $files` ; do printresult "$x" "$search" ; done +} + +find_needs() { + antisearch='[^U]'" $1"'$' + search=U" $1"'$' + for x in `eval $files` ; do + [ -z "`printresult "$x" "$antisearch"`" ] && \ + printresult "$x" "$search" + done +} + +if [ "$1" = "has" ] ; then + find_has "$2" +elif [ "$1" = "needs" ] ; then + find_needs "$2" +elif [ "$1" = "requiredby" ] ; then + objects="$(echo "$(find_has "$2")" | awk '{print $1}' | tr -d ':')" + for file in $objects ; do + printresult "$file" "U " + done +else + echo "Usage: findsym {has|needs|requiredby} " + exit 1 +fi + +exit 0 + --- cernlib-2006.dfsg.2.orig/debian/add-ons/bin/install-cernlib-dirs.sh +++ cernlib-2006.dfsg.2/debian/add-ons/bin/install-cernlib-dirs.sh @@ -0,0 +1,187 @@ +#!/bin/sh -e + +# install-cernlib-dirs.sh: Script to create a skeleton CERNLIB directory +# structure populated by symlinks to actual file locations. This script is +# documented fully in the README.Debian file for the cernlib-base package. + +# Copyright (C) 2006, 2007 Kevin B. McCarty . This script +# is licensed under the GNU General Public Licence, version 2 or any later +# version (at your option). + +msg_inform() { + echo ; echo " I: $1" +} + +msg_warn() { + echo ; echo " W: $1" 1>&2 +} + +msg_error() { + echo ; echo " E: $1 Aborting." 1>&2 ; exit 1 +} + +create_dir() { + echo -n "Attempting to create directory $1 ... " + if [ -d "$1" ] ; then + if [ -L "$1" ] ; then + msg_warn "Following existing symlink $1." + else + msg_inform "Using existing directory." + fi + elif [ -e "$1" ] ; then + msg_error "$1 already exists as a non-directory!" + elif [ -L "$1" ] ; then + msg_warn "Replacing broken symlink $1 with directory." + rm "$1" || msg_error "Unable to delete broken symlink $1!" + mkdir -p "$1" || msg_error "Unable to create directory $1!" + else + mkdir -p "$1" || msg_error "Unable to create directory $1!" + echo "done." + fi +} + +create_link() { + echo -n "Attempting to create symlink $2 -> $1 ... " + if [ -e "$2" ] && [ ! -L "$2" ] ; then + msg_error "Will not replace existing $2 with symlink!" + elif [ -L "$2" ] ; then + target="`ls -ld "$2" | sed 's/^.* -> //'`" + if [ "$target" = "$1" ] ; then + msg_inform "Desired symlink already exists." + else + msg_warn \ + "Will not replace existing symlink $2 -> $target" + msg_warn "with new symlink $2 -> $1." + fi + else + ln -s "$1" "$2" || \ + msg_error "Unable to create symlink $2 -> $1!" + echo "done." + fi +} + +destroy_dir() { + if [ ! -e "$1" ] && [ ! -L "$1" ] ; then + echo "No need to remove nonexistent $1" + return + fi + + echo -n "Attempting to remove directory $1 ... " + if [ -d "$1" ] ; then + if [ -L "$1" ] ; then + msg_warn "$1 is a symlink; not touching." + elif rmdir "$1" > /dev/null 2>&1 ; then + echo "done." + elif rmdir --ignore-fail-on-non-empty "$1" ; then + msg_warn "$1 is not empty; not touching." + else + msg_warn "Unable to remove directory $1." + fi + elif [ -L "$1" ] && [ ! -e "$1" ] ; then + msg_inform "It is a dead symlink; deleting it." + rm "$1" || msg_error "Unable to delete symlink $1!" + else + msg_warn "$1 is not a directory; not touching." + fi +} + +destroy_link() { + if [ ! -e "$1" ] && [ ! -L "$1" ] ; then + echo "No need to remove nonexistent $1" + return + fi + + echo -n "Attempting to remove symlink $1 ... " + if [ ! -L "$1" ] ; then + msg_warn "$1 is not a symlink; not touching." + else + rm "$1" || msg_error "Unable to delete symlink $1!" + echo "done." + fi +} + +# Defaults +yr=2006 +uninstall=no +basedir= + +while [ $# -gt 0 ] ; do + case "$1" in + --uninstall) uninstall=yes ;; + --install) uninstall=no ;; + --year) shift ; yr="$1" ;; + *) basedir="$1" ;; + esac + shift +done + +lvl="${yr}deb" # Debian-specific value of $CERN_LEVEL we use +pfx="cern/$lvl" + +if [ "$uninstall" = yes ] ; then + destroy_link "$basedir/$pfx/src/config" + destroy_link "$basedir/$pfx/src/include" + destroy_link "$basedir/$pfx/src/pawlib/paw/ntuple" + for dir in src/pawlib/paw src/pawlib src ; do + destroy_dir "$basedir/$pfx/$dir" + done + + for dir in cspack epio fatmen ffread hbook hepdb kapack kuip minuit \ + zbook zebra kernbit kerngen kernnum comis paw sigma dzdoc \ + hplot higz gen geant321 cojets eurodec herwig59 isajet758 \ + jetset74 pdf804 pythia6205 cfortran stdhep ; do + destroy_link "$basedir/$pfx/include/$dir" + done + destroy_dir "$basedir/$pfx/include" + + for datafile in xsneut95.dat cojets.dat isajet.dat eurodec.dat ; do + destroy_link /usr/lib/$datafile + done + + destroy_link "$basedir/$pfx/lib" + destroy_link "$basedir/$pfx/bin" + destroy_dir "$basedir/$pfx" + destroy_dir "$basedir/cern/$yr" + destroy_dir "$basedir/cern/dev" + destroy_dir "$basedir/cern/pro" + destroy_dir "$basedir/cern/old" + destroy_dir "$basedir/cern" + exit 0 +fi + +if [ -n "$basedir" ] && [ ! -d "$basedir" ] ; then + create_dir "$basedir" +fi + +create_dir "$basedir/cern" +create_dir "$basedir/$pfx" +create_link "$lvl" "$basedir/cern/$yr" +create_link "$lvl" "$basedir/cern/dev" +create_link "$lvl" "$basedir/cern/pro" +create_link "$lvl" "$basedir/cern/old" +create_link /usr/bin "$basedir/$pfx/bin" +create_link /usr/lib "$basedir/$pfx/lib" + +for datafile in geant321-data/xsneut95.dat montecarlo-data/eurodec.dat \ + montecarlo-data/cojets.dat montecarlo-data/isajet.dat ; do + create_link /usr/share/$datafile /usr/lib/$(basename $datafile) +done + +create_dir "$basedir/$pfx/include" +for dir in cspack epio fatmen ffread hbook hepdb kapack kuip minuit zbook \ + zebra kernbit kerngen kernnum comis paw sigma dzdoc hplot \ + higz gen geant321 cojets eurodec herwig59 isajet758 jetset74 \ + pdf804 pythia6205 cfortran stdhep ; do + create_link /usr/include/$dir "$basedir/$pfx/include/$dir" +done + +create_dir "$basedir/$pfx/src" +create_link /usr/share/cernlib/config "$basedir/$pfx/src/config" +create_link "$basedir/$pfx/include" "$basedir/$pfx/src/include" + +# At least as of 2004, ATLAS was trying to use the directory +# $CERN/$CERN_LEVEL/src/pawlib/paw/ntuple, which is installed at +# /usr/include/paw/ntuple to fix bug #243860 +create_dir "$basedir/$pfx/src/pawlib/paw" +create_link /usr/include/paw/ntuple "$basedir/$pfx/src/pawlib/paw/ntuple" + --- cernlib-2006.dfsg.2.orig/debian/add-ons/bin/remove-deadpool +++ cernlib-2006.dfsg.2/debian/add-ons/bin/remove-deadpool @@ -0,0 +1,20 @@ +#!/bin/sh + +set -e +cd upstream + +for dir in `tr '/' ' ' < ../debian/deadpool.txt | awk '{print $1}' \ + | sed -e 's/#.*//g' -e '/$^/d' | sort | uniq` ; do + version=`ls -1 | head -n 1` + echo Removing files with bad copyright from $dir module... + for badfile in `grep '^'$dir ../debian/deadpool.txt \ + | sed 's/\#.*$//g'` ; do + path=$version/src/$badfile + [ -e "$path" ] || echo "Skipping non-existent $path ..." + rm -rf $version/src/$badfile + done +done +echo Done. + +exit 0 + --- cernlib-2006.dfsg.2.orig/debian/add-ons/bin/fixheader +++ cernlib-2006.dfsg.2/debian/add-ons/bin/fixheader @@ -0,0 +1,38 @@ +#!/bin/sh + +# shell script to add multiple inclusion protection, etc. to header files + +set -e + +header="$1" +basename=`basename "$header"` +defname=_`echo "$basename" | tr '[a-z].' '[A-Z]_'` +mv "$header" "$header.tmp" + +cat > "$header" << EOF +#ifndef $defname +#define $defname +#include + +#ifdef __cplusplus +extern "C" { +#endif + +EOF + +# convert #include "foo.h" to #include +sed 's,^\([ ]*#[ ]*include\)[ ]*"\([^"]*\)",\1 <\2>,g' \ + "$header.tmp" >> "$header" + +cat >> "$header" << EOF + +#ifdef __cplusplus +} /* extern "C" */ +#endif + +#endif /* #ifndef $defname */ +EOF + +rm -f "$header.tmp" +exit 0 + --- cernlib-2006.dfsg.2.orig/debian/add-ons/bin/cernlib.in +++ cernlib-2006.dfsg.2/debian/add-ons/bin/cernlib.in @@ -0,0 +1,549 @@ +#!/bin/bash + +# This script is a completely rewritten version of the cernlib script supplied +# with the original CERNLIB source. It now does recursive library dependency +# checking, removes duplicate entries, and makes breakfast. (Well, not really.) +# This script is provided under the GNU General Public License. + +# I have tried to maintain cross-platform compatibility, but I don't have +# any other architectures handy to test things on, so it might have broken. +# But this is not a big deal, since it's doubtful that someone would use +# Debian packages on HP-UX, Solaris, etc. anyway. + +# Author: Kevin McCarty, 2002/06/12 +# Last revision 2007/01/08 + +print_help() { + cat <<- EOF + Usage: cernlib [OPTIONS] LIBRARIES + List the linker options required to compile a CERNLIB program with the given + library dependencies. Example: "cernlib -G Motif pawlib" on Linux outputs + "-Wl,-static -lpawlib-lesstif -lpawlib -lmathlib -lgraflib -lpacklib-lesstif + -lgrafX11 -lpacklib -lkernlib -Wl,-dy -L/usr/X11R6/lib -lXbae -lXm -lXaw + -llapack -lm -lXt -lX11 -lnsl -lcrypt -ldl -lgfortran". + + -a Specify an architecture, e.g. Linux (default), AIX, HP-UX, etc. + -dy, -safe Don't assume CERN libraries should be linked against statically. + This flag is also required when using the compiler -static flag. + -G Specify a graphics driver. Options: X11, Motif, GPHIGS, + GKS, GL, GPR. Only the first two are available on Linux. + -P, -s Ignored; for backwards compatibility. + -u Do not include arch-specific libraries in the output. + -v Specify version of \$CERN_LEVEL. This is meaningless unless + you have installed non-Debian versions of CERNLIB. In that + case you should export \$CERN or \$CERN_ROOT first. + -?, --help Print this help message and exit. + EOF +} + +# Function to determine system name +sysname() { + local ARCH + + [ -d /NextAdmin ] && ARCH="NeXT" || ARCH=`uname -s` + case $ARCH in + SunOS) [ `uname -r | awk '{ print substr($1,1,1) }'` -ge 5 ] \ + && ARCH="SunSol" + ;; + *) ;; + esac + echo $ARCH +} + +# Function to find system-specific libraries +# Usage: find_sysdeps [ $ARCH ] +find_sysdeps() { + local ARCH SYSLIBS + + [ $# -lt 1 ] && ARCH=`sysname` || ARCH=$1 + [ "$ARCH" = "default" ] && ARCH=`sysname` + SYSLIBS="" + + # SGI needs -lsun, to see yellow pages + # As of 5.x, the yp version is in libc, so -lsun is no longer needed. + # GF. 18-7-96 + # [ -f /usr/lib/libsun.a -o -f /usr/lib/libsun.so ] \ + # && SYSLIBS="-lsun" + [ -f /usr/lib/libulsock.a -o -f /usr/lib/libulsock.so ] \ + && SYSLIBS="$SYSLIBS -lulsock" + # Solaris, many things won't link without -lsocket -lnsl + if [ "$ARCH" = "SunSol" ] ; then + [ -f /usr/lib/libw.so -o -f /usr/lib/libw.a ] \ + && SYSLIBS="$SYSLIBS -lw" + [ -f /usr/ccs/lib/libgen.so -o -f /usr/ccs/lib/libgen.a ] \ + && SYSLIBS="$SYSLIBS -lgen" + [ -f /usr/lib/libsocket.so -o -f /usr/lib/libsocket.a ] \ + && SYSLIBS="$SYSLIBS -lsocket" + [ -f /usr/lib/libnsl.so -o -f /usr/lib/libnsl.a ] \ + && SYSLIBS="$SYSLIBS -lnsl" + [ -f /usr/lib/libintl.so -o -f /usr/lib/libintl.a ] \ + && SYSLIBS="$SYSLIBS -lintl" + SYSLIBS="$SYSLIBS -ldl" + fi + + if [ "$ARCH" = "HP-UX" ] ; then + if [ -f /usr/lib/libU77.a -o -f /usr/lib/libU77.sl ] ; then + SYSLIBS="$SYSLIBS -lU77" + elif [ -f /opt/fortran/lib/libU77.a ] ; then + SYSLIBS="$SYSLIBS /opt/fortran/lib/libU77.a" + elif [ -f /opt/fortran/lib/libU77.sl ] ; then + SYSLIBS="$SYSLIBS /opt/fortran/lib/libU77.sl" + fi + + SYSLIBS="$SYSLIBS /usr/lib/libdld.sl" + [ -f /lib/pa1.1/libm.a ] && SYSLIBS="$SYSLIBS /lib/pa1.1/libm.a" + fi + + [ "$ARCH" = "AIX" ] && SYSLIBS="$SYSLIBS -lld" + [ "$ARCH" = "Linux" ] && SYSLIBS="$SYSLIBS -lnsl -lcrypt -ldl -lgfortran" + [ "$ARCH" = "Darwin" ] && SYSLIBS="$SYSLIBS -ldl" + + echo $SYSLIBS +} + +# Function to find graphics libraries +# Usage: find_grafdeps [ $DRIVER [ $ARCH ] ] +find_grafdeps() { + local DRIVER ARCH GRAFLIBS + + [ $# -lt 1 ] && DRIVER=X11 || DRIVER=$1 + [ $# -lt 2 ] && ARCH=`sysname` || ARCH=$2 + [ "$DRIVER" = "default" ] && DRIVER=X11 + [ "$ARCH" = "default" ] && ARCH=`sysname` + + case $ARCH in + AIX) + SYSGGL="-lfgl -lgl" ; + [ -f /usr/lib/libgP.a ] && SYSGGKS="-lgksco -lgP -lX11" + SYSGMOTIF="-lXm -lXt -lX11 -lPW" + ;; + ALLIANT) + SYSGX11="-lX11 -lcurses -lm" + ;; + HP-UX) + if [ -d /usr/lib/X11R5 -a -d /usr/lib/Motif1.2 ] ; then + X11="/usr/lib/X11R5" + Motif="/usr/lib/Motif1.2" + SYSGMOTIF="-L$Motif -lXm -L$X11 -lXt -lX11 -lm -lc -lPW" + else + X11="/usr/lib/X11R4" + Motif="/usr/lib/Motif1.1" + # Xm must appear late, else you get + # unresolved extrernals + SYSGMOTIF="-L$Motif -L$X11 -lXm -lXt -lX11 -lm -lc -lPW" + fi + SYSGX11="-L$X11 -lX11 -lm" + ;; + IBMAIX) + SYSGX11="-lX11 -lm" + ;; + IRIX) + SYSGX11="-lX11 -lbsd" + SYSGGL="-lfgl -lgl_s -lm -lbsd" + SYSGMOTIF="-lXm -lXt -lX11 -lPW" + ;; + IRIX64) + SYSGX11="-lX11 -lbsd" + SYSGGL="-lfgl -lgl_s -lm -lbsd" + SYSGMOTIF="-lXm -lXt -lX11 -lPW" + ;; + Linux) + SYSGX11=-lX11 + SYSGMOTIF="-lXm -lXt -lX11" + XDIR=/usr/X11R6/lib + XDIR64=/usr/X11R6/lib64 + if [ -d $XDIR64 ] ; then + SYSGX11="-L$XDIR64 $SYSGX11" + SYSGMOTIF="-L$XDIR64 $SYSGMOTIF" + fi + if [ -d $XDIR ] ; then + SYSGX11="-L$XDIR $SYSGX11" + SYSGMOTIF="-L$XDIR $SYSGMOTIF" + fi + ;; + Darwin) + SYSGX11=-lX11 + SYSGMOTIF="-lXm -lXt -lXp -lXext -lX11 -lSM -lICE" + XDIR=/usr/X11R6/lib + XDIR64=/usr/X11R6/lib64 + if [ -d $XDIR64 ] ; then + SYSGX11="-L$XDIR64 $SYSGX11" + SYSGMOTIF="-L$XDIR64 $SYSGMOTIF" + fi + if [ -d $XDIR ] ; then + SYSGX11="-L$XDIR $SYSGX11" + SYSGMOTIF="-L$XDIR $SYSGMOTIF" + fi + ;; + + NeXT) + SYSGX11="/usr/lib/X11/libX11.r" + SYSGMOTIF="-lXm -lXt /usr/lib/X11/libX11.r" + ;; + OSF1) + SYSGX11="-lX11 -ldnet_stub" + SYSGMOTIF="-lXm -lXt -lX11 -ldnet_stub -lPW -lXmu" + ;; + SunOS) + [ -d /usr/motif/lib ] && Motif="-L/usr/motif/lib" \ + || Motif=" " + if [ -d /usr/motif12/usr/lib ] ; then + Motif="-L/usr/motif12/usr/lib" + # motif12 needs X11R5 from usr/local/lib + X11="-L/usr/local/lib" + else + X11="" + fi + SYSGMOTIF="$Motif -lXm $X11 -lXt -lX11" + [ -f /usr/lib/libgks77.a ] && \ + SYSGGKS="-lgks77 -lgks -lsuntool -lsunwindow -lpixrect -lm" + ;; + SunSol) + [ -d /usr/motif/lib ] && Motif="-L/usr/motif/lib" \ + || Motif=" " + [ -d /usr/motif12/usr/lib ] && \ + Motif="-L/usr/motif12/usr/lib" + [ -d /usr/dt/lib ] && \ + Motif="-L/usr/dt/lib -R/usr/dt/lib -Bdynamic" + [ -d /usr/openwin/lib ] && \ + X11="-L/usr/openwin/lib" || X11="" + SYSGX11="$X11 -Bdynamic -lX11" + SYSGMOTIF="$Motif -lXm $X11 -Bdynamic -lXt -lX11" + [ -f /usr/lib/libgks77.a ] && \ + SYSGGKS="-lgks77 -lgks -lsuntool -lsunwindow -lpixrect -lm" + ;; + ULTRIX) + [ -f /usr/lib/libGKS3D.a ] && \ + SYSGGKS="-lGKS3Dforbnd -lGKS3D -lddif -ldwt -lc -lX11 -lcursesX -lm" + ;; + DomainOS) + SYSGX11="" + SYSGMOTIF="-L/usr/lib/X11 -lXm -lXt -lX11 -lm" + ;; + esac # case `sysname` in + [ -z "$SYSGX11" ] && SYSGX11="-lX11" + + GRAFLIBS="" + case $DRIVER in + GL) GRAFLIBS="$GRAFLIBS $SYSGGL" ;; + GPR) GRAFLIBS="$GRAFLIBS $SYSGGPR" ;; + X11) GRAFLIBS="$GRAFLIBS $SYSGX11" ;; + Lesstif|Motif) + [ -z "$SYSGMOTIF" ] && SYSGMOTIF="-lXm -lXt $SYSGX11" + GRAFLIBS="$GRAFLIBS $SYSGMOTIF" + ;; + GPHIGS) + [ -z "$SYSGPHIGS" ] && \ + SYSGPHIGS="_-L$CERN/phigs/$_ver/lib _-lgphigsf2c _-lgphigsc" + GRAFLIBS="$GRAFLIBS $SYSGPHIGS" + ;; + GKS) + [ -z "$SYSGGKS" ] && \ + SYSGGKS="_-L$CERN/gks/$_ver/lib _-lGKS _-lGKSdriv $SYSGX11" + GRAFLIBS="$GRAFLIBS $SYSGGKS" + ;; + --) break ;; + *) break ;; + esac # case $DRIVER in + + echo $GRAFLIBS +} + +# Function to find a library +find_library() { + # $1 = library to find + + # if $2 = "cern", search only in CERNLIB dirs if $CERN exists. + # This behavior is currently commented out since it causes breakage + # when compiling Debianized out-of-tree CERNLIB modules. :-( + + local dirlist="/lib /usr/lib /usr/X11R6/lib /lib64 /usr/lib64 /usr/X11R6/lib64 @LIBPREFIX@" + if [ ! "$CERN" = "@PREFIX@" ] ; then + #if [ "$2" = cern ] ; then + # dirlist="$CERN_ROOT/shlib $CERN_ROOT/lib" + #else + dirlist="$dirlist $CERN_ROOT/shlib $CERN_ROOT/lib" + #fi + fi + for ext in so a ; do for dir in $dirlist ; do + if [ -e "$dir/lib$1.$ext" ] ; then return 0 ; fi + done ; done + return 1 +} + +# Function to calculate library dependencies for given library names +# Usage: depend $DRIVER $ARCH $libs +depend() { + local DEPS="" + local d=$1 ; shift + local a=$1 ; shift + + while [ $# -gt 0 ] ; do + case $1 in + # obsolete libnames that no longer exist AFAIK + bvsl|mpalib) + DEPS="$DEPS `depend $d $a mathlib`" ;; + genlib) + DEPS="$DEPS `depend $d $a phtools`" ;; + + # current libraries + blas) + if [ "$a" = "Darwin" ] ; then + DEPS="$DEPS -lcblas -lf77blas -latlas" + else + DEPS="$DEPS -l$1" + fi + DEPS="$DEPS -lm" + ;; + cojets|pdflib804|phtools) + DEPS="$DEPS _-l$1 `depend $d $a mathlib`" ;; + eurodec|kernlib|photos202) + DEPS="$DEPS _-l$1 -lm" ;; + geant321) + if find_library jetset cern ; then + DEPS="$DEPS `depend $d $a jetset`" + fi + DEPS="$DEPS _-l$1 `depend Motif $a pawlib`" ;; + herwig59|isajet758) + DEPS="$DEPS _-l$1 `depend $d $a pdflib`" ;; + lapack*) + DEPS="$DEPS -llapack -lm" + if [ ! "$a" = Linux ] ; then + DEPS="$DEPS `depend $d $a blas`" + fi + ;; + mathlib) + DEPS="$DEPS _-l$1 `depend $d $a lapack packlib`" + ;; + packlib) + if find_library packlib-lesstif cern \ + && [ "$d" = Motif -o "$d" = Lesstif ] + then + DEPS="$DEPS _-lpacklib-lesstif \ + _-lgrafX11 `find_grafdeps Motif $a`" + elif [ "$d" = X11 ] ; then + DEPS="$DEPS _-lgrafX11 \ + `find_grafdeps X11 $a`" + fi + DEPS="$DEPS _-l$1 `depend $d $a kernlib`" ;; + + # these are not in the Debian distribution of CERNLIB, + # but may be installed via the Debian packages + # ancis and montecarlo-installer-data + ariadne) + DEPS="$DEPS _-l$1 `depend $d $a pythia6`" ;; + ariadne-p5) + DEPS="$DEPS _-l$1 `depend $d $a lepto`" ;; + jetset|pythia|fritiof) + DEPS="$DEPS _-l$1 -lm" ;; + lepto) + DEPS="$DEPS _-l$1 `depend $d $a pythia5 \ + mathlib`" ;; + pythia5) + DEPS="$DEPS _-l$1 `depend $d $a jetset`" ;; + + # graphical libraries + + GKS|gks) + DEPS="$DEPS `find_grafdeps GKS $a`" ;; + naglib) + DEPS="$DEPS _-L$CERN/nag/$_ver/lib _-l$1" ;; + graflib*) + local drv="`echo $1 | sed 's,/, ,g' | \ + awk '{ print $2 }'`" + [ -z "$drv" ] && drv="$d" || d="$drv" + [ "$drv" = "default" -o "$drv" = "Motif" \ + -o "$drv" = "Lesstif" ] && drv="X11" + DEPS="$DEPS _-lgraflib _-lgraf$drv \ + `depend $d $a packlib` \ + `find_grafdeps $d $a`" + ;; + pawlib) + if find_library pawlib-lesstif cern \ + && [ "$d" = Motif -o "$d" = Lesstif ] ; + then + DEPS="$DEPS _-lpawlib-lesstif -lXbae -lXaw" + fi + DEPS="$DEPS _-l$1 \ + `depend $d $a mathlib` \ + `depend $d $a graflib/$d` \ + `find_grafdeps $d $a`" + ;; + + # needed only for compiling libraries + grafX11) + DEPS="$DEPS _-l$1 `depend $d $a packlib` \ + `find_grafdeps $d $a`" ;; + packlib-lesstif) + DEPS="$DEPS `depend Motif $a packlib` \ + `find_grafdeps Motif $a`" ;; + pawlib-lesstif) + DEPS="$DEPS `depend Motif $a pawlib` \ + `find_grafdeps Motif $a`" ;; + + # aliases + ar) DEPS="$DEPS `depend $d $a ariadne`" ;; + arp5) DEPS="$DEPS `depend $d $a ariadne-p5`" ;; + geant) DEPS="$DEPS `depend $d $a geant321`" ;; + herwig) DEPS="$DEPS `depend $d $a herwig59`" ;; + isajet) DEPS="$DEPS `depend $d $a isajet758`" ;; + pdflib) DEPS="$DEPS `depend $d $a pdflib804`" ;; + photos) DEPS="$DEPS `depend $d $a photos202`" ;; + pythia6) DEPS="$DEPS `depend $d $a pythia`" ;; + + # anything that we don't know what it is and doesn't + # start with a "-", turn into a library + *) DEPS="$DEPS -l$1" ;; + esac + shift + done + + [ "$d" != default ] && DEPS="$DEPS `find_grafdeps $d $a`" + echo $DEPS +} + +# Function to take a list of strings and prefix "-l" to any of them that +# do not begin with "-" +liblink() { + local LIST="" + while [ $# -gt 0 ] ; do + case $1 in + -*) LIST="$LIST $1" ;; + *) LIST="$LIST -l$1" ;; + esac + shift + done + echo $LIST +} + + +# Function to take a list of strings and remove all but the last occurrence +# of each -l and all but the first occurrence of each other string +uniquify() { + local RESULT="" RESULT2="" SEARCHDIRS="" LIBXBAE="" LIBXM="" LIBXAW="" + + # CERN-related linker options have all been prepended with a "_"; + # put them all first and remove the underscore. + for (( num=1 ; num <= $# ; num++ )) ; do + case ${!num} in + _*) RESULT="$RESULT ${!num#_}" ;; + -L*) SEARCHDIRS="$SEARCHDIRS ${!num}" ;; + + # Note: Xbae, Xm and Xaw must appear in the following + # order: -lXbae -lXm -lXaw, so check for them separately + -lXbae) LIBXBAE=${!num} ;; + -lXm) LIBXM=${!num} ;; + -lXaw) LIBXAW=${!num} ;; + + # All other libs or command flags go last + *) RESULT2="$RESULT2 ${!num}" ;; + esac + done + LIBXM="$LIBXBAE $LIBXM $LIBXAW" + + if [ -z "$_dynamic" ] ; then + RESULT="-Wl,-static $RESULT -Wl,-dy $SEARCHDIRS $LIBXM $RESULT2" + else + RESULT="$RESULT $SEARCHDIRS $LIBXM $RESULT2" + fi + set - $RESULT + RESULT="" + + # decrement and remove duplicate libnames + for (( num=$# ; num > 0 ; num-- )) ; do + case ${!num} in + -l*|-L*) + [ -z "`echo $RESULT | grep -- ${!num}`" ] && \ + RESULT="${!num} $RESULT" ;; + *) RESULT="${!num} $RESULT" ;; + esac + done + + set - $RESULT + RESULT="" + + # increment and remove other duplicate strings + for (( num=1 ; num <= $# ; num++ )) ; do + case ${!num} in + -l*) RESULT="$RESULT ${!num}" ;; + *) [ -z "`echo $RESULT | grep -- ${!num}`" ] && \ + RESULT="$RESULT ${!num}" ;; + esac + done + + echo $RESULT +} + + +[ -z "$CERN" ] && CERN="@CERN@" +_ver="$CERN_LEVEL" +_u="" ; _arch="`sysname`" ; _driver="default" +_argsdone=false +ARGS="" +COMPFLAGS="" + +while [ $# -gt 0 ] ; do + if [ "$_argsdone" = false ] ; then + case $1 in + -a) _arch="$2" ; shift ;; + -dy|-safe) _dynamic=true ;; + -G) _driver="$2" ; shift ;; + -P|-s) shift ; continue ;; + -u) _u=1 ;; + -v) _ver="$2" ; shift ;; + --) _argsdone=true ; shift ;; + --help) print_help ; exit 0 ;; + -*) print_help ; exit 1 ;; + *) _argsdone=true ;; + esac + fi + + if [ "$_argsdone" = true ] ; then + case $1 in + -l*) ARGS="$ARGS ${1#-l}" ;; + -*) COMPFLAGS="$COMPFLAGS $1" ;; + *) ARGS="$ARGS $1" ;; + esac + fi + shift +done + +if [ -z "$_ver" ]; then + _ver="@VERSION@" +fi + +if [ -z "$CERN_ROOT" ] ; then + if [ "$CERN" = "@PREFIX@" ] ; then + CERN_ROOT="@PREFIX@" + else + CERN_ROOT="$CERN/$_ver" + fi +fi + +CERNLIB="" +OTHERLIBS="" + +for lib in `echo "$ARGS" | sed -e 's/,/ /g'` ; do + DEPS="`depend $_driver $_arch $lib`" + if [ -n "$DEPS" ] ; then + CERNLIB="$CERNLIB $DEPS" + else + OTHERLIBS="$OTHERLIBS `liblink $lib`" + fi +done + +LIBDIR="" +if [ "$CERN_ROOT" != "@PREFIX@" ] ; then + [ -d "$CERN_ROOT/shlib" ] && [ -n "$_dynamic" ] && \ + LIBDIR="$LIBDIR -L$CERN_ROOT/shlib" + [ -d "$CERN_ROOT/lib" ] && LIBDIR="$LIBDIR -L$CERN_ROOT/lib" + if [ -z "$LIBDIR" ] ; then + echo "Can't find CERNLIB libraries in $CERN_ROOT!" 1>&2 + exit 1 + fi +fi +[ -z "$_u" ] && SYSDEPS=`find_sysdeps $_arch` || SYSDEPS="" + +echo $COMPFLAGS $LIBDIR `uniquify $CERNLIB $OTHERLIBS $SYSDEPS` +exit 0 + --- cernlib-2006.dfsg.2.orig/debian/add-ons/bin/gmake +++ cernlib-2006.dfsg.2/debian/add-ons/bin/gmake @@ -0,0 +1,44 @@ +#!/bin/sh + +# gmake wrapper script + +# This is needed because the name of the make command in the cernlib source +# is assumed to be "gmake", but GNU Make is simply called "make" in most +# Linux distributions. + +# Do not install this script to somewhere in a standard $PATH; +# it should be used only for the cernlib build process. + +if [ "x$ADDONDIR" = x ] ; then + echo "gmake: this script is not intended to be used outside the" 1>&2 + echo " cernlib build process!" 1>&2 + exit 1 +fi + +MAKE="" + +# see if there is a "gmake" other than this script +oldIFS="$IFS" +IFS=":" +oldADDONDIR="$ADDONDIR" +ADDONDIR="" +for dir in $PATH ; do + if [ -x "$dir/gmake" ] && [ -f "$dir/gmake" ] && \ + ! "$dir/gmake" --not-a-real-flag 2>&1 | grep -q cernlib ; then + MAKE="$dir/gmake" + break + fi +done +export IFS="$oldIFS" ADDONDIR="$oldADDONDIR" + +# if not, try to use "make" +# This is easier since we don't have to tiptoe around ourselves +[ "x$MAKE" = x ] && which make > /dev/null 2>&1 && MAKE=make + +if [ "x$MAKE" = x ] ; then + echo "gmake: wrapper script can find neither gmake nor make in \$PATH!" + exit 1 +fi + +exec "$MAKE" "$@" + --- cernlib-2006.dfsg.2.orig/debian/po/fi.po +++ cernlib-2006.dfsg.2/debian/po/fi.po @@ -0,0 +1,53 @@ +msgid "" +msgstr "" +"Project-Id-Version: cernlib 2006.dfsg.2-3\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2007-12-12 19:26+0200\n" +"Last-Translator: Esko Arajärvi \n" +"Language-Team: Finnish \n" +"Language: fi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Poedit-Language: Finnish\n" +"X-Poedit-Country: Finland\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Molemmat" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Inetdistä ajettavat palvelimet:" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Tämä paketti sisältää sekä pawserw-taustaohjelman (joka sallii paikallisten " +"tiedostojen luvun etänä ajettaessa ohjelmia PAW/Paw++) että zserv-" +"taustaohjelman (joka sallii etäkoneiden kirjautua sisään käyttäen CERNin " +"ZFTP-yhteyskäytäntöä)." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Nämä palvelimet ajetaan inetd-superpalvelimella ja joko molemmat tai vain " +"toinen voidaan aktivoida. Pelkkä palvelin ”pawserv” riittää useimmille " +"käyttäjille." --- cernlib-2006.dfsg.2.orig/debian/po/de.po +++ cernlib-2006.dfsg.2/debian/po/de.po @@ -0,0 +1,66 @@ +# translation of cernlib_2006.dfsg.2-3_de.po to German +# +# Translators, if you are not familiar with the PO format, gettext +# documentation is worth reading, especially sections dedicated to +# this format, e.g. by running: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# Some information specific to po-debconf are available at +# /usr/share/doc/po-debconf/README-trans +# or http://www.debian.org/intl/l10n/po-debconf/README-trans# +# Developers do not need to manually edit POT or PO files. +# +# Erik Schanze , 2004-2007. +msgid "" +msgstr "" +"Project-Id-Version: cernlib_2006.dfsg.2-3_de\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2007-12-25 22:36+0100\n" +"Last-Translator: Erik Schanze \n" +"Language-Team: German \n" +"Language: de\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Beide" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Server, die Inetd starten soll:" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Dieses Paket enthält sowohl den Pawserv-Dienst (Der verhindert, dass " +"entfernte Rechner das lokale Dateisystem lesen können während PAW/Paw++ " +"läuft.) als auch den Zserv-Dienst (Der erlaubt entfernten Rechnern sich über " +"CERN's ZFTP-Protokoll anzumelden.)." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Diese Server-Dienste werden von Inetd gestartet und einer oder beide können " +"aktiv sein. Für die meisten Benutzer wird es ausreichend sein, nur »Pawserv« " +"zu aktivieren." --- cernlib-2006.dfsg.2.orig/debian/po/ru.po +++ cernlib-2006.dfsg.2/debian/po/ru.po @@ -0,0 +1,64 @@ +# translation of ru.po to Russian +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Yuri Kozlov , 2007. +msgid "" +msgstr "" +"Project-Id-Version: 2006.dfsg.2-2\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2007-12-12 21:08+0300\n" +"Last-Translator: Yuri Kozlov \n" +"Language-Team: Russian \n" +"Language: ru\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n" +"%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "оба" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Серверы, которые должны запускаться из inetd:" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"В пакет входят 2 демона: pawserv (позволяет удалённым хостам читать " +"локальные файлы при работающем PAW/Paw++) и zserv (позволяет удалённым " +"хостам регистрироваться с помощью протокола CERN ZFTP)." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Эти серверы запускаются суперсервером inetd; вы можете включить какой-то " +"один или оба сразу. Большинству пользователей достаточно включать только " +"'pawserv'." + +#~ msgid "Pawserv" +#~ msgstr "Pawserv" + +#~ msgid "Zserv" +#~ msgstr "Zserv" --- cernlib-2006.dfsg.2.orig/debian/po/nb.po +++ cernlib-2006.dfsg.2/debian/po/nb.po @@ -0,0 +1,55 @@ +# translation of templates.pot_[Xb9IRb].po to Norwegian Bokmål +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# +# Bjørn Steensrud , 2007. +msgid "" +msgstr "" +"Project-Id-Version: templates.pot_[Xb9IRb]\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2007-12-11 22:04+0100\n" +"Last-Translator: Bjørn Steensrud \n" +"Language-Team: Norwegian Bokmål \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Begge" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Tjenere som skal startes fra inetd:" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Denne pakka inneholder både pawserv-nissen (som gjør at maskiner på " +"nettverket kan lese lokale filer når de kjører PAW/Paw++) og zserv-nissen " +"(som gjør at maskiner på nettverket kan logge inn med CERNs ZFTP-protokoll.)" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Disse tjenerne startes fra supertjeneren inetd, og en eller begge to kan " +"være aktivert. For de fleste brukerne er det nok å aktivere bare «pawserv»." --- cernlib-2006.dfsg.2.orig/debian/po/templates.pot +++ cernlib-2006.dfsg.2/debian/po/templates.pot @@ -0,0 +1,49 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME \n" +"Language-Team: LANGUAGE \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" --- cernlib-2006.dfsg.2.orig/debian/po/gl.po +++ cernlib-2006.dfsg.2/debian/po/gl.po @@ -0,0 +1,56 @@ +# Galician translation of cernlib's debconf templates +# This file is distributed under the same license as the cernlib package. +# Jacobo Tarrio , 2007. +# +msgid "" +msgstr "" +"Project-Id-Version: cernlib\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2007-12-11 19:19+0000\n" +"Last-Translator: Jacobo Tarrio \n" +"Language-Team: Galician \n" +"Language: gl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Ámbolos dous" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Servidores a executar desde inetd:" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Este paquete inclúe o servidor pawserv (que permite ás máquinas remotas ler " +"ficheiros locais executando PAW/Paw++) e o servidor zserv (que permite ás " +"máquinas remotas conectarse empregando o protocolo ZFTP do CERN)." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Estes servidores execútanse desde inetd, e pode activar os dous ou só un " +"deles. Activar \"pawserv\" por si só abonda para a maioría dos usuarios." + +#~ msgid "Pawserv, Zserv, Both" +#~ msgstr "Pawserv, Zserv, Ámbolos dous" --- cernlib-2006.dfsg.2.orig/debian/po/fr.po +++ cernlib-2006.dfsg.2/debian/po/fr.po @@ -0,0 +1,58 @@ +# Translation of cernlib debconf templates to French +# Copyright (C) 2007 Christian Perrier +# This file is distributed under the same license as the cernlib package. +# +# +# Christian Perrier , 2007. +msgid "" +msgstr "" +"Project-Id-Version: \n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2007-12-12 00:42+0530\n" +"Last-Translator: Christian Perrier \n" +"Language-Team: French \n" +"Language: fr\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Les deux" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Servers to be run from inetd:" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Ce paquet fournit à la fois le démon pawserv (qui permet aux hôtes distants " +"d'accéder aux fichiers locaux lorsque PAX/Paw++ sont utilisés) et le démon " +"zserv (qui permet aux hôtes distants d'effectuer des connexions avec le " +"protocole ZFTP du CERN)." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +" Ces deux serveurs sont lancés par le super-serveur inetd et il est possible " +"d'activer l'un ou l'autre ou bien les deux. À moins d'avoir des besoins " +"particuliers, il sera en général suffisant d'activer « Pawserv »." --- cernlib-2006.dfsg.2.orig/debian/po/POTFILES.in +++ cernlib-2006.dfsg.2/debian/po/POTFILES.in @@ -0,0 +1 @@ +[type: gettext/rfc822deb] pawserv.templates --- cernlib-2006.dfsg.2.orig/debian/po/vi.po +++ cernlib-2006.dfsg.2/debian/po/vi.po @@ -0,0 +1,67 @@ +# Vietnamese translation for cernlib. +# Copyright © 2007 Free Software Foundation, Inc. +# Clytie Siddall , 2005-2007. +# +msgid "" +msgstr "" +"Project-Id-Version: cernlib 2006.dfsg.2-3\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2007-12-21 22:26+1030\n" +"Last-Translator: Clytie Siddall \n" +"Language-Team: Vietnamese \n" +"Language: vi\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=1; plural=0;\n" +"X-Generator: LocFactoryEditor 1.7b1\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Cả hai" + +# msgid "Servers to be run from inetd" +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Trình phục vụ cần chạy từ inetd:" + +# msgid "" +# This package includes both the pawserv daemon (permitting remote hosts to +# read local files while running PAW/Paw++) and the zserv daemon (allowing +# remote hosts to log in using CERN's ZFTP protocol). These servers are +# run from inetd; you may enable either or both of them. Unless you have +# very specialized requirements, most likely you only want to enable +# pawserv. +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Gói này chứa cả hai trình nền pawserv (cho phép máy từ xa đọc các tập tin " +"cục bộ trong khi chạy PAW/Paw++) và trình nền zserv (cho phép máy từ xa đăng " +"nhập bằng giao thức ZFTP của CERN)." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Những trình phục vụ này được chạy từ siêu trình phục vụ inetd, và có thể " +"hiệu lực hoặc cả hai hoặc chỉ một của chúng. Hiệu lực chỉ « pawserv » là đủ " +"cho phần lớn người dùng." + +#~ msgid "Pawserv, Zserv, Both" +#~ msgstr "Pawserv, Zserv, Cả hai" --- cernlib-2006.dfsg.2.orig/debian/po/it.po +++ cernlib-2006.dfsg.2/debian/po/it.po @@ -0,0 +1,55 @@ +# Italian (it) translation of debconf templates for cernlib +# Copyright (C) 2007 Software in the Public Interest +# This file is distributed under the same license as the cernlib package. +# Luca Monducci , 2007. +# +msgid "" +msgstr "" +"Project-Id-Version: cernlib 2006.dfsg debconf templates\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2007-12-16 09:32+0100\n" +"Last-Translator: Luca Monducci \n" +"Language-Team: Italian \n" +"Language: it\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Entrambi" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Servizi da avviare tramite inetd:" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Questo pacchetto include il demone pawserv (che permette di leggere da " +"remoto i file locali quando è attivo PAW/Paw++) e il demone zserv (che " +"consente l'accesso da remoto tramite il protocollo ZFTP di CERN)." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Questi servizi sono avviati dal superserver inetd; è possibile abilitarli " +"entrambi oppure solo uno dei due. Solitamente è sufficiente abilitare solo " +"\"pawserv\"." --- cernlib-2006.dfsg.2.orig/debian/po/es.po +++ cernlib-2006.dfsg.2/debian/po/es.po @@ -0,0 +1,83 @@ +# cernlib po-debconf translation to Spanish +# Copyright (C) 2005, 2008 Software in the Public Interest +# This file is distributed under the same license as the cernlib package. +# +# Changes: +# - Initial translation +# César Gómez Martín , 2005 +# +# - Updates +# Francisco Javier Cuadrado , 2008 +# +# Traductores, si no conoce el formato PO, merece la pena leer la +# documentación de gettext, especialmente las secciones dedicadas a este +# formato, por ejemplo ejecutando: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# +# Equipo de traducción al español, por favor, lean antes de traducir +# los siguientes documentos: +# +# - El proyecto de traducción de Debian al español +# http://www.debian.org/intl/spanish/ +# especialmente las notas de traducción en +# http://www.debian.org/intl/spanish/notas +# +# - La guía de traducción de po's de debconf: +# /usr/share/doc/po-debconf/README-trans +# o http://www.debian.org/intl/l10n/po-debconf/README-trans +# +msgid "" +msgstr "" +"Project-Id-Version: cernlib 2006.dfsg.2-13.2\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2008-12-04 09:25+0100\n" +"Last-Translator: Francisco Javier Cuadrado \n" +"Language-Team: Debian l10n spanish \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=utf-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Ambos" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Servidores a ejecutar desde inetd:" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Este paquete incluye el demonio «pawserv» (permitiendo a las máquinas " +"remotas leer archivos locales mientras ejecutan PAW/Paw++) y el demonio " +"«zserv» (permitiendo a las máquinas remotas identificarse usando el " +"protocolo ZFTP del CERN)." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Estos servidores se ejecutan desde el superservidor inetd y ambos o sólo uno " +"de ellos se puede activar. Para la mayoría de los usuarios, activando sólo " +"«pawserv» es suficiente." + +#~ msgid "Pawserv, Zserv, Both" +#~ msgstr "Pawserv, Zserv, Ambos" --- cernlib-2006.dfsg.2.orig/debian/po/cs.po +++ cernlib-2006.dfsg.2/debian/po/cs.po @@ -0,0 +1,51 @@ +# Czech translation of cernlib templates +# +msgid "" +msgstr "" +"Project-Id-Version: cernlib 2004.11.04-3\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2007-12-24 14:13+0100\n" +"Last-Translator: Miroslav Kure \n" +"Language-Team: Czech \n" +"Language: cs\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Obě" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Služby spuštěné z inetd" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Tento balík obsahuje služby pawserv (dovoluje vzdáleným hostům číst lokální " +"soubory pomocí PAW/Paw++) a zserv (umožňuje vzdáleným hostům se připojit " +"pomocí vlastního CERN protokolu ZFTP)." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Tyto služby jsou spuštěny z inetd a můžete se rozhodnout, zda povolíte obě, " +"nebo jenom jednu z nich. Pro většinu uživatelů stačí povolit „pawserv“." --- cernlib-2006.dfsg.2.orig/debian/po/pt.po +++ cernlib-2006.dfsg.2/debian/po/pt.po @@ -0,0 +1,61 @@ +# Native Portuguese translation of cernlib. +# Copyright (C) 2006 THE cernlib'S COPYRIGHT HOLDER +# This file is distributed under the same license as the cernlib package. +# Hugo Peixoto , 2006. +# Miguel Figueiredo , 2008. +# +# +msgid "" +msgstr "" +"Project-Id-Version: cernlib 2006.dfsg.2-3\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2008-01-01 20:58+0000\n" +"Last-Translator: Miguel Figueiredo \n" +"Language-Team: Portuguese \n" +"Language: pt\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Ambos" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Servidores a correrem a partir do inetd:" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Este pacote inclui tanto o daemon pawserv (permitindo que anfitriões remotos " +"leiam ficheiros locais enquanto correm PAW/Pawpp) como o daemon zserv " +"(permitindo que anfitriões remotos utilizem o protocolo ZFTP da CERN para se " +"autenticarem)." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Estes servidores correm a partir do superservidor inetd e pode ser activado " +"um deles ou ambos. Permitir apenas o 'pawserv' é suficiente para a maioria " +"dos utilizadores." + +#~ msgid "Pawserv, Zserv, Both" +#~ msgstr "Pawserv, Zserv, Ambos" --- cernlib-2006.dfsg.2.orig/debian/po/pt_BR.po +++ cernlib-2006.dfsg.2/debian/po/pt_BR.po @@ -0,0 +1,61 @@ +# cernlib Brazilian Portuguese translation +# Copyright (c) 2005-2008 cernlib's COPYRIGHT HOLDER +# This file is distributed under the same license as the cernlib package. +# André Luís Lopes , 2005. +# Felipe Augusto van de Wiel (faw) , 2008. +# +msgid "" +msgstr "" +"Project-Id-Version: cernlib\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2008-10-06 03:02-0300\n" +"Last-Translator: Felipe Augusto van de Wiel (faw) \n" +"Language-Team: Brazilian Portuguese \n" +"Language: pt_BR\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"pt_BR utf8\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Ambos" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Servidores a serem executados a partir do inetd:" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Este pacote inclui o daemon pawserv (que permite que hosts remotos leiam " +"arquivos locais quando executam PAW/Paw++) e o daemon zserv (que permite que " +"hosts remotos se autentiquem usando o protocolo ZFTP do CERN)." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Estes servidores são executados a partir do superservidor inetd e você pode " +"habilitar cada um deles separadamente ou os dois ao mesmo tempo. Habilitar " +"somente o 'pawserv' é suficiente para a maioria dos usuários." + +#~ msgid "Pawserv, Zserv, Both" +#~ msgstr "Pawserv, Zserv, Ambos" --- cernlib-2006.dfsg.2.orig/debian/po/nl.po +++ cernlib-2006.dfsg.2/debian/po/nl.po @@ -0,0 +1,68 @@ +# translation of cernlib_2006.dfsg.2-13.1.po to Dutch +# +# Translators, if you are not familiar with the PO format, gettext +# documentation is worth reading, especially sections dedicated to +# this format, e.g. by running: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# +# Some information specific to po-debconf are available at +# /usr/share/doc/po-debconf/README-trans +# or http://www.debian.org/intl/l10n/po-debconf/README-trans +# +# Developers do not need to manually edit POT or PO files. +# +# Paul Gevers , 2008. +msgid "" +msgstr "" +"Project-Id-Version: cernlib_2006.dfsg.2-13.1_nl\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2008-10-05 19:30-0600\n" +"Last-Translator: Paul Gevers \n" +"Language-Team: Dutch \n" +"Language: nl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ISO-8859-1\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Allebei" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Welke servers moeten door inetd worden gestart?" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Dit pakket bevat de pawserv- en zserv-achtergronddiensten. Pawserv geeft " +"andere computers de rechten om lokale bestanden te lezen wanneer die 'PAW/Paw" +"++' draaien. Zserv staat andere computers toe om in te loggen, gebruikmakend " +"van het ZFTP-protocol van CERN." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Deze servers worden door de inetd-superserver opgestart. U kunt slecht n " +"of allebei de servers laten starten. Voor de meeste gebruikers volstaat " +"pawserv." --- cernlib-2006.dfsg.2.orig/debian/po/eu.po +++ cernlib-2006.dfsg.2/debian/po/eu.po @@ -0,0 +1,57 @@ +# translation of cernlib-eu.po to Euskara +# Aitor Ibanez ,2007. +# Aitor Ibanez , 2007. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +msgid "" +msgstr "" +"Project-Id-Version: cernlib-eu\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2007-12-17 12:25+0100\n" +"Last-Translator: Aitor Ibanez \n" +"Language-Team: Euskara \n" +"Language: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Biak" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "inetd bidez ibiliko diren zerbitzariak:" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Pakete honek biak dakarzki pawserv deabrua (urruneko ostalariei aukera " +"emateko lokaleko fitxategiak irakurtzeko PAW/Paw++ dabilen bitartea) eta " +"zserv deabrua (urruneko ostalariei CERNen ZSFTP protokoa erabiliz saio " +"hasteko baimena emateko)." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Zerbitzaria hauek inted superzerbitzaritik abiarazten dira eta biak edo " +"banaka aktiba daitezke.'pawserv' bakarrik aktibatuz erabiltzaile " +"gehienentzat nahikoa da." --- cernlib-2006.dfsg.2.orig/debian/po/ja.po +++ cernlib-2006.dfsg.2/debian/po/ja.po @@ -0,0 +1,64 @@ +# +# Translators, if you are not familiar with the PO format, gettext +# documentation is worth reading, especially sections dedicated to +# this format, e.g. by running: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# +# Some information specific to po-debconf are available at +# /usr/share/doc/po-debconf/README-trans +# or http://www.debian.org/intl/l10n/po-debconf/README-trans +# +# Developers do not need to manually edit POT or PO files. +# +# +msgid "" +msgstr "" +"Project-Id-Version: cernlib 2006.dfsg.2-6\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2008-01-30 21:26+0900\n" +"Last-Translator: Hideki Yamane (Debian-JP) \n" +"Language-Team: Japanese \n" +"Language: ja\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Both" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "inetd から起動されるサーバ:" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"このパッケージは pawserv デーモン (PAW/Paw++ を動作させている間、リモートホス" +"トにローカルのファイルを読み取るのを許可します) と zserv デーモン(リモートホ" +"ストに CERN ZFTP プロトコルを使ってログをとるのを許可します) の両方を含んでい" +"ます。" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"これらのサーバは inetd スーパーサーバから起動され、両方、またはどちらか片方の" +"みを有効にできます。殆どのユーザには 'pawserv' だけを有効にするので十分です。" --- cernlib-2006.dfsg.2.orig/debian/po/sv.po +++ cernlib-2006.dfsg.2/debian/po/sv.po @@ -0,0 +1,64 @@ +# translation of cernlib_2006.dfsg.2-13_sv.po to Swedish +# Translators, if you are not familiar with the PO format, gettext +# documentation is worth reading, especially sections dedicated to +# this format, e.g. by running: +# info -n '(gettext)PO Files' +# info -n '(gettext)Header Entry' +# Some information specific to po-debconf are available at +# /usr/share/doc/po-debconf/README-trans +# or http://www.debian.org/intl/l10n/po-debconf/README-trans +# Developers do not need to manually edit POT or PO files. +# +# Martin gren , 2008. +msgid "" +msgstr "" +"Project-Id-Version: cernlib_2006.dfsg.2-13_sv\n" +"Report-Msgid-Bugs-To: Source: cernlib@packages.debian.org\n" +"POT-Creation-Date: 2007-12-12 00:38+0530\n" +"PO-Revision-Date: 2008-07-20 10:35+0200\n" +"Last-Translator: Martin gren \n" +"Language-Team: Swedish \n" +"Language: sv\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ISO-8859-1\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#. Type: select +#. Choices +#. Translators: "Both" means both "Pawserv" and "Zserv" to the question +#. about servers to be run +#: ../pawserv.templates:2001 +msgid "Both" +msgstr "Bda" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "Servers to be run from inetd:" +msgstr "Servrar som ska kras frn inetd:" + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"This package includes both the pawserv daemon (permitting remote hosts to " +"read local files while running PAW/Paw++) and the zserv daemon (allowing " +"remote hosts to log in using CERN's ZFTP protocol)." +msgstr "" +"Detta paket inkluderar bde pawserver-demonen (tillter fjrrsystem att lsa " +"lokala filer nr PAW/Paw++ krs) och zserv-demonen (tillter fjrrsystem att " +"logga in med CERNs ZFTP-protokoll)." + +#. Type: select +#. Description +#: ../pawserv.templates:2002 +msgid "" +"These servers are run from the inetd superserver and either both or only one " +"of them may be enabled. Enabling 'pawserv' alone is sufficient for most " +"users." +msgstr "" +"Dessa servrar krs frn inetd-superservern och antingen bda eller endast en " +"av dem kan aktiveras. Att endast aktivera \"pawserv\" rcker fr de flesta " +"anvndare." --- cernlib-2006.dfsg.2.orig/debian/control.d/libkernlib1-dev.control +++ cernlib-2006.dfsg.2/debian/control.d/libkernlib1-dev.control @@ -0,0 +1,17 @@ +Package: libkernlib1-dev +Architecture: any +Section: libdevel +Depends: libkernlib1-gfortran (= ${binary:Version}), cernlib-base-dev (>= 2006.dfsg.2-6), cfortran (>= 4.4-10), libc6-dev | libc-dev, ${misc:Depends} +Recommends: gfortran (>= 4:4.3) +Description: CERNLIB data analysis suite - core library of basic functions (development) + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The kernlib library contains a rather miscellaneous set of basic numerical, + bitwise, and system-dependent functions used by other CERN libraries and + programs. + . + This package includes the static version of kernlib, as well as + C and FORTRAN header files. + --- cernlib-2006.dfsg.2.orig/debian/control.d/libpacklib-lesstif1-dev.control +++ cernlib-2006.dfsg.2/debian/control.d/libpacklib-lesstif1-dev.control @@ -0,0 +1,29 @@ +Package: libpacklib-lesstif1-dev +Architecture: any +Section: libdevel +Depends: libpacklib-lesstif1-gfortran (= ${binary:Version}), libgrafx11-1-dev (= ${binary:Version}), lesstif2-dev, libxt-dev (>= 4.3.0-3), ${misc:Depends} +Conflicts: libkuipx11-1-dev, libpacklib1-lesstif-dev +Replaces: libpacklib1-lesstif-dev +Description: CERNLIB data analysis suite - core GUI library (development files) + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The packlib library includes a great deal of CERNLIB core functionality. + Best-known are probably the MINUIT function minimization routines, the + HBOOK histogramming routines, and KUIP (Kit for a User Interface Package). + Other subsystems include CSPACK, a set of client-server routines; FFREAD, + a format-free input processing system for FORTRAN; and ZEBRA, a data + structure management package. + . + This package includes the graphical functionality of KUIP, the CERNLIB + Kit for a User Interface Package. This library has been split off + from packlib so that the packlib packages need not depend upon + the X and Lesstif libraries. + . + This package was formerly named libkuipx11-1-dev. The text-based + functionality of KUIP can be found in the libpacklib1-dev package. + . + This package provides the static version of the libpacklib-lesstif library, + to be used for development. + --- cernlib-2006.dfsg.2.orig/debian/control.d/cernlib-core-dev.control +++ cernlib-2006.dfsg.2/debian/control.d/cernlib-core-dev.control @@ -0,0 +1,15 @@ +Package: cernlib-core-dev +Architecture: all +Section: devel +Depends: cernlib-base (= ${source:Version}), cernlib-base-dev, libgraflib1-dev, libgrafx11-1-dev, libkernlib1-dev, libpacklib-lesstif1-dev, libmathlib2-dev, libpacklib1-dev, libpawlib2-dev, libpawlib-lesstif3-dev, kuipc, dzedit, nypatchy, ${misc:Depends} +Description: CERNLIB data analysis suite - core development files + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This metapackage provides the header files and static libraries needed + by developers using the CERN libraries and not specifically interested in high + energy physics. It also provides the CERNLIB development tools: DZedit, + KUIPC, and the Nypatchy family of programs. CERNLIB analysis programs may be + obtained by installing the cernlib-core metapackage. + --- cernlib-2006.dfsg.2.orig/debian/control.d/nypatchy.control +++ cernlib-2006.dfsg.2/debian/control.d/nypatchy.control @@ -0,0 +1,28 @@ +Package: nypatchy +Architecture: any +Priority: optional +Section: devel +Depends: ${shlibs:Depends}, cernlib-base (>= 2006.dfsg.2-12), ${misc:Depends} +Recommends: gfortran | fortran-compiler, gcc | c-compiler +Description: CERNLIB data analysis suite - patch pre-processor for source code + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This package contains the Nypatchy family of programs, the successors to + Patchy and Ypatchy. These programs are intended for working with sets of + patches (for instance, for use on different machine architectures) meant to + be applied to a source code tree. The patch sets and common source code are + maintained as a single text-based Patchy Master file (PAM file). PAM files + can contain C, FORTRAN, or assembly code. + . + Nypatchy and related utilities can perform actions on a PAM file such as + updating it; comparing it to an older version; or outputting source code + suitable for input to a compiler, having selected some subset of available + patches to use. These utilities can be used interactively, or can run in + batch mode from a "cradle" file of commands. + . + While Nypatchy is still used in places, mainly high-energy physics, these + programs are no longer under active development. They are not recommended + for use in new projects. + --- cernlib-2006.dfsg.2.orig/debian/control.d/cernlib.control +++ cernlib-2006.dfsg.2/debian/control.d/cernlib.control @@ -0,0 +1,14 @@ +Package: cernlib +Architecture: all +Section: science +Depends: cernlib-base (= ${source:Version}), cernlib-core, cernlib-core-dev, cernlib-montecarlo, geant321-doc, geant321, ${misc:Depends} +Description: CERNLIB data analysis suite - general use metapackage + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This metapackage provides almost all of the programs and libraries contained + in CERNLIB. Most people will likely want only a subset of these. A few + extra CERNLIB programs, not of interest to many people, may be obtained via + the cernlib-extras metapackage. + --- cernlib-2006.dfsg.2.orig/debian/control.d/hepdb.disabled +++ cernlib-2006.dfsg.2/debian/control.d/hepdb.disabled @@ -0,0 +1,20 @@ +Package: hepdb +Architecture: any +Priority: extra +Section: science +Depends: ${shlibs:Depends}, cernlib-base +Description: CERNLIB data analysis suite - High Energy Physics database system + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The HEPDB package is a database management system tuned to the specific + requirements of High Energy Physics experiments. In particular, it is well + suited to the storage and retrieval of detector geometry and calibration + information. However, it may also be applied to other experimental areas + such as book-keeping. + . + This package includes the programs hepbackup, hepmake, hepmove, hepserv, + and hepdb. The first four were originally called cdbackup, cdmake, etc. + but were renamed due to a name conflict with Debian's cdbackup package. + --- cernlib-2006.dfsg.2.orig/debian/control.d/libpacklib1-dev.control +++ cernlib-2006.dfsg.2/debian/control.d/libpacklib1-dev.control @@ -0,0 +1,22 @@ +Package: libpacklib1-dev +Architecture: any +Section: libdevel +Depends: libpacklib1-gfortran (= ${binary:Version}), libkernlib1-dev (= ${binary:Version}), cfortran (>= 4.4-10), libc6-dev | libc-dev, ${misc:Depends} +Suggests: libpacklib-lesstif1-dev +Description: CERNLIB data analysis suite - core library (development files) + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The packlib library includes a great deal of CERNLIB core functionality. + Best-known are probably the MINUIT function minimization routines, the + HBOOK histogramming routines, and KUIP (Kit for a User Interface Package). + Other subsystems include CSPACK, a set of client-server routines; FFREAD, + a format-free input processing system for FORTRAN; and ZEBRA, a data + structure management package. + . + This package contains a static version of packlib. Also included are C + and FORTRAN header files. Please note that the graphical functionality of + KUIP has been split out into the separate libpacklib-lesstif1-dev package + so that this package need not depend upon the X and Lesstif libraries. + --- cernlib-2006.dfsg.2.orig/debian/control.d/libgraflib1-gfortran.control +++ cernlib-2006.dfsg.2/debian/control.d/libgraflib1-gfortran.control @@ -0,0 +1,17 @@ +Package: libgraflib1-gfortran +Architecture: any +Section: libs +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: CERNLIB data analysis suite - graphical library + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The graflib library includes the HPLOT and DZDOC systems. HPLOT is a + graphing facility intended to produce drawings and slides of histograms + (and other data) of a quality suitable to talks and publications. DZDOC + provides a method of viewing CERNLIB's ZEBRA data structures. + . + In order to compile and link programs against this library, + you must also install the libgraflib1-dev package. + --- cernlib-2006.dfsg.2.orig/debian/control.d/zftp.control +++ cernlib-2006.dfsg.2/debian/control.d/zftp.control @@ -0,0 +1,20 @@ +Package: zftp +Architecture: any +Priority: extra +Section: net +Depends: ${shlibs:Depends}, netbase (>= 4.08), ${misc:Depends} +Description: CERNLIB data analysis suite - file transfer program + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + ZFTP is a macro-extensible file transfer program which supports the + transfer of formatted, unformatted and ZEBRA RZ files (CMZ, HBOOK, etc.). + It provides a common interface on all systems and avoids the problems of + file format conversion that occur when transferring CERNLIB files + between different architectures. + . + Except for the special treatment of CERNLIB files and use of a different port, + zftp is very similar to an FTP client. Unless you are already familiar with + this program, it will almost certainly be useless to you. + --- cernlib-2006.dfsg.2.orig/debian/control.d/libgrafx11-1-gfortran.control +++ cernlib-2006.dfsg.2/debian/control.d/libgrafx11-1-gfortran.control @@ -0,0 +1,16 @@ +Package: libgrafx11-1-gfortran +Architecture: any +Section: libs +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: CERNLIB data analysis suite - interface to X11 and PostScript + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This package includes libgrafX11, also known as HIGZ (High-level Interface + to Graphics and ZEBRA), an interface to the X Window System. In addition + to basic drawing functions, HIGZ includes a PostScript interface. + . + Note that in order to compile and link programs against this library, + you must also install the libgrafx11-1-dev package. + --- cernlib-2006.dfsg.2.orig/debian/control.d/fatmen.disabled +++ cernlib-2006.dfsg.2/debian/control.d/fatmen.disabled @@ -0,0 +1,17 @@ +Package: fatmen +Architecture: any +Priority: extra +Section: science +Depends: ${shlibs:Depends}, cernlib-base, netbase (>= 4.08) +Conflicts: harden-servers +Description: CERNLIB data analysis suite - file and tape management system + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The FATMEN package is a distributed file and tape management system. It + provides transparent access to file catalogue information and to data with + no source code changes required when moving from one host to another. + This is independent of the location of the data or of the host operating + system. + --- cernlib-2006.dfsg.2.orig/debian/control.d/pawserv.control +++ cernlib-2006.dfsg.2/debian/control.d/pawserv.control @@ -0,0 +1,27 @@ +Package: pawserv +Architecture: any +Priority: extra +Section: net +Depends: ${shlibs:Depends}, ${misc:Depends}, netbase (>= 4.08), openbsd-inetd | inet-superserver +Recommends: cron +Suggests: logrotate +Conflicts: zserv, harden-servers +Replaces: zserv +Description: CERNLIB data analysis suite - distributed PAW and file transfer servers + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This package contains the server daemon for remote PAW clients. PAW + is the Physics Analysis Workstation, a graphical analysis program. + Included in the same binary is zserv, the server daemon for the ZFTP protocol; + zserv is a macro-extensible file transfer program which supports the + transfer of formatted, unformatted and ZEBRA RZ files (CMZ, HBOOK, etc.). + It is similar to a standard FTP daemon, although it listens on a different + port. Both servers operate through inetd. + . + Since these servers accept passwords in clear text and do not support SSL + or other encryption methods, you should probably only install this package + within a trusted LAN. It should be seen as equivalent to vanilla telnetd + in terms of security (or lack thereof). + --- cernlib-2006.dfsg.2.orig/debian/control.d/cernlib-base.control +++ cernlib-2006.dfsg.2/debian/control.d/cernlib-base.control @@ -0,0 +1,15 @@ +Package: cernlib-base +Architecture: all +Section: devel +Depends: ${misc:Depends} +Suggests: vim-addon-manager +Description: CERNLIB data analysis suite - common files + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This package includes miscellaneous architecture-independent files useful + for CERNLIB libraries and programs, including an example script that can + generate a skeleton CERNLIB directory structure and Vim syntax highlighting + macros for KUIPC CDF files and PAW "kumac" macro files. + --- cernlib-2006.dfsg.2.orig/debian/control.d/libgraflib1-dev.control +++ cernlib-2006.dfsg.2/debian/control.d/libgraflib1-dev.control @@ -0,0 +1,17 @@ +Package: libgraflib1-dev +Architecture: any +Section: libdevel +Depends: libgraflib1-gfortran (= ${binary:Version}), libgrafx11-1-dev (= ${binary:Version}), ${misc:Depends} +Description: CERNLIB data analysis suite - graphical library (development files) + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The graflib library includes the HPLOT and DZDOC systems. HPLOT is a + graphing facility intended to produce drawings and slides of histograms + (and other data) of a quality suitable to talks and publications. DZDOC + provides a method of viewing CERNLIB's ZEBRA data structures. + . + This package includes a static version of graflib, as well as C and FORTRAN + header files. + --- cernlib-2006.dfsg.2.orig/debian/control.d/libpacklib-lesstif1-gfortran.control +++ cernlib-2006.dfsg.2/debian/control.d/libpacklib-lesstif1-gfortran.control @@ -0,0 +1,28 @@ +Package: libpacklib-lesstif1-gfortran +Architecture: any +Section: libs +Depends: ${shlibs:Depends}, ${misc:Depends} +Recommends: kxterm +Description: CERNLIB data analysis suite - core GUI library + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The packlib library includes a great deal of CERNLIB core functionality. + Best-known are probably the MINUIT function minimization routines, the + HBOOK histogramming routines, and KUIP (Kit for a User Interface Package). + Other subsystems include CSPACK, a set of client-server routines; FFREAD, + a format-free input processing system for FORTRAN; and ZEBRA, a data + structure management package. + . + This package includes the graphical functionality of KUIP, the CERNLIB + Kit for a User Interface Package. This library has been split off + from packlib so that the packlib packages need not depend upon + the X and Lesstif libraries. + . + This package was formerly named libkuipx11-1. The text-based functionality + of KUIP can be found in the libpacklib1-gfortran package. + . + Note that in order to compile and link programs against this library, you + must also install the libpacklib-lesstif1-dev package. + --- cernlib-2006.dfsg.2.orig/debian/control.d/libpacklib1-gfortran.control +++ cernlib-2006.dfsg.2/debian/control.d/libpacklib1-gfortran.control @@ -0,0 +1,27 @@ +Package: libpacklib1-gfortran +Architecture: any +Section: libs +Depends: ${shlibs:Depends}, ${misc:Depends} +Suggests: xterm | x-terminal-emulator +Conflicts: paw-static (<= 2005.05.09-1), paw++-static (<= 2005.05.09-1) +Description: CERNLIB data analysis suite - core library + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The packlib library includes a great deal of CERNLIB core functionality. + Best-known are probably the MINUIT function minimization routines, the + HBOOK histogramming routines, and KUIP (Kit for a User Interface Package). + Other subsystems include CSPACK, a set of client-server routines; FFREAD, + a format-free input processing system for FORTRAN; and ZEBRA, a data + structure management package. + . + This package also includes kuesvr, the KUIP edit server program that permits + calling an editor asynchronously from within a KUIP-based program. + . + Please note that the graphical functionality of KUIP has been split out into + the separate libpacklib-lesstif1-gfortran package so that this package need + not depend upon the X libraries. In order to compile and link programs + against libpacklib, you must also install the libpacklib1-dev (and + maybe also the libpacklib-lesstif1-dev) package(s). + --- cernlib-2006.dfsg.2.orig/debian/control.d/libmathlib2-dev.control +++ cernlib-2006.dfsg.2/debian/control.d/libmathlib2-dev.control @@ -0,0 +1,20 @@ +Package: libmathlib2-dev +Architecture: any +Section: libdevel +Depends: libblas-dev | libatlas-base-dev | libblas-3gf.so, liblapack-dev | libatlas-base-dev | liblapack-3gf.so, libmathlib2-gfortran (= ${binary:Version}), libkernlib1-dev (= ${binary:Version}), libpacklib1-dev (= ${binary:Version}), cfortran (>= 4.4-10), libc6-dev | libc-dev, ${misc:Depends} +Conflicts: libmathlib1-dev, blas2-dev, lapack2-dev, refblas3-dev, lapack3-dev +Replaces: libmathlib1-dev +Description: CERNLIB data analysis suite - core mathematical library (development files) + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The mathlib library is a large set of mathematical routines used for purposes + such as evaluating special functions and integrals, numerically solving + algebraic and differential equations, performing matrix and vector operations, + running statistical tests, and generating random numbers in specified + distributions. + . + This package contains a static version of mathlib, as well + as C and FORTRAN header files. + --- cernlib-2006.dfsg.2.orig/debian/control.d/libmathlib2-gfortran.control +++ cernlib-2006.dfsg.2/debian/control.d/libmathlib2-gfortran.control @@ -0,0 +1,18 @@ +Package: libmathlib2-gfortran +Architecture: any +Section: libs +Depends: ${shlibs:Depends}, ${misc:Depends} +Description: CERNLIB data analysis suite - core mathematical library + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The mathlib library is a large set of mathematical routines used for purposes + such as evaluating special functions and integrals, numerically solving + algebraic and differential equations, performing matrix and vector operations, + running statistical tests, and generating random numbers in specified + distributions. + . + In order to compile and link programs against this library, you + must also install the libmathlib2-dev package. + --- cernlib-2006.dfsg.2.orig/debian/control.d/0base.control +++ cernlib-2006.dfsg.2/debian/control.d/0base.control @@ -0,0 +1,8 @@ +Source: cernlib +Maintainer: Kevin B. McCarty +Standards-Version: 3.8.1 +Priority: optional +Section: science +Homepage: http://cernlib.web.cern.ch/cernlib/ +Build-Depends: po-debconf, dpkg-dev (>= 1.13.19), dpatch (>= 2.0.9), patch, mawk | gawk, xutils-dev, debhelper (>= 5.0.0), gfortran (>= 4:4.3), cfortran (>= 4.4-10), x11proto-core-dev, libxt-dev, libx11-dev, lesstif2-dev, libblas-dev, liblapack-dev + --- cernlib-2006.dfsg.2.orig/debian/control.d/cernlib-base-dev.control +++ cernlib-2006.dfsg.2/debian/control.d/cernlib-base-dev.control @@ -0,0 +1,18 @@ +Package: cernlib-base-dev +Architecture: all +Section: devel +Depends: cernlib-base (= ${source:Version}), ${misc:Depends} +Replaces: cernlib-base (<< 2005.dfsg-6) +Conflicts: libcojets1-dev, libgeant1-dev, libherwig59-dev, libisajet758-dev, libkuipx11-1-dev, libmathlib1-dev, libpaw1-dev, libpdflib804-dev, libphtools1-dev, blas2-dev, lapack2-dev +Description: CERNLIB data analysis suite - dependencies checking script + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This package includes the "cernlib" script that lists the command-line options + needed for linking against CERNLIB libraries. The script has been rewritten + from the upstream version to calculate dependencies recursively. Also + included are a contributed set of Autoconf macros to test for CERNLIB + libraries, and a set of Imake macros to allow CERNLIB modules to be built + out-of-tree. + --- cernlib-2006.dfsg.2.orig/debian/control.d/libkernlib1-gfortran.control +++ cernlib-2006.dfsg.2/debian/control.d/libkernlib1-gfortran.control @@ -0,0 +1,16 @@ +Package: libkernlib1-gfortran +Architecture: any +Section: libs +Depends: ${shlibs:Depends}, cernlib-base, ${misc:Depends} +Description: CERNLIB data analysis suite - core library of basic functions + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + The kernlib library contains a rather miscellaneous set of basic numerical, + bitwise, and system-dependent functions used by other CERN libraries and + programs. + . + Note that in order to compile and link programs against this library, you + must also install the libkernlib1-dev package. + --- cernlib-2006.dfsg.2.orig/debian/control.d/kuipc.control +++ cernlib-2006.dfsg.2/debian/control.d/kuipc.control @@ -0,0 +1,23 @@ +Package: kuipc +Architecture: any +Section: devel +Depends: ${shlibs:Depends}, cernlib-base, ${misc:Depends} +Recommends: cernlib-base-dev, libpacklib1-dev +Suggests: libpacklib-lesstif1-dev +Description: CERNLIB data analysis suite - KUIP compiler + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + KUIPC, the Kit for a User Interface Package Compiler, is a tool to simplify + the writing of a program's user interface code. It takes + a Command Definition File (CDF) as input, which describes the + commands to be understood by the program, and outputs C or FORTRAN code that + makes the appropriate function calls to set up the user interface. This + code can then be compiled and linked with the rest of the program. Since + the generated code uses KUIP routines, the program must also be linked + against the Packlib library that contains them. + . + KUIPC is no longer actively developed, so aside from its use in the build + process of CERNLIB, it is of mainly historical interest. + --- cernlib-2006.dfsg.2.orig/debian/control.d/dzedit.control +++ cernlib-2006.dfsg.2/debian/control.d/dzedit.control @@ -0,0 +1,15 @@ +Package: dzedit +Architecture: any +Section: devel +Depends: ${shlibs:Depends}, ${misc:Depends} +Recommends: cernlib-base-dev, libpacklib1-dev +Description: CERNLIB data analysis suite - ZEBRA documentation editor + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + DZedit is an interactive interface to the DZDOC (ZEBRA documentation) system + developed at CERN. ZEBRA, part of the Packlib library, allows the creation + of complex data structures in the FORTRAN 77 language; the DZDOC system + helps to generate and maintain documentation for ZEBRA data structures. + --- cernlib-2006.dfsg.2.orig/debian/control.d/cernlib-core.control +++ cernlib-2006.dfsg.2/debian/control.d/cernlib-core.control @@ -0,0 +1,15 @@ +Package: cernlib-core +Architecture: all +Section: science +Depends: cernlib-base (= ${source:Version}), kxterm, paw++, paw, paw-common, paw-demos, ${misc:Depends} +Description: CERNLIB data analysis suite - main libraries and programs + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This metapackage provides the libraries and analysis tools (e.g. PAW) likely + to be wanted by most users of the CERN libraries who are not interested + specifically in high energy physics. It does not provide development + libraries or tools; those may be obtained by installing the cernlib-core-dev + metapackage or individual lib*-dev packages. + --- cernlib-2006.dfsg.2.orig/debian/control.d/kxterm.control +++ cernlib-2006.dfsg.2/debian/control.d/kxterm.control @@ -0,0 +1,16 @@ +Package: kxterm +Architecture: any +Section: science +Depends: ${shlibs:Depends}, cernlib-base, ${misc:Depends} +Description: CERNLIB data analysis suite - KUIP terminal emulator + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + KXterm is a terminal emulator which combines the best features from + the (now defunct) Apollo DM pads (like: input and transcript + pads, automatic file backup of transcript pad, string search in pads, + etc.) and the Korn shell emacs-style command line editing and command + line recall mechanism. It can support the command-line interface + of various CERNLIB applications. + --- cernlib-2006.dfsg.2.orig/debian/control.d/cernlib-extras.control +++ cernlib-2006.dfsg.2/debian/control.d/cernlib-extras.control @@ -0,0 +1,20 @@ +Package: cernlib-extras +Architecture: all +Priority: extra +Section: science +Depends: cernlib-base (= ${source:Version}), pawserv, zftp, ${misc:Depends} +Description: CERNLIB data analysis suite - extra programs + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This metapackage provides a few additional CERNLIB programs not included + in any other CERNLIB package. Very few people are likely to be + interested in them; currently they include zftp, pawserv and zserv. + The latter two programs run as daemons through inetd and may + raise concerns about the system's security. + . + Installing this package along with the 'cernlib' metapackage will supply + a complete set of all CERNLIB programs and libraries, except for those + not included in Debian due to licensing reasons. + --- cernlib-2006.dfsg.2.orig/debian/control.d/libgrafx11-1-dev.control +++ cernlib-2006.dfsg.2/debian/control.d/libgrafx11-1-dev.control @@ -0,0 +1,14 @@ +Package: libgrafx11-1-dev +Architecture: any +Section: libdevel +Depends: libgrafx11-1-gfortran (= ${binary:Version}), libpacklib1-dev (= ${binary:Version}), libx11-dev (>= 4.3.0-3), ${misc:Depends} +Description: CERNLIB data analysis suite - interface to X11 and PostScript (development) + CERNLIB is a suite of data analysis tools and libraries created for + use in physics experiments, but also with applications to other + fields such as the biological sciences. + . + This package includes a static version of libgrafX11, also known as HIGZ + (High-level Interface to Graphics and ZEBRA), an interface to the X Window + System. In addition to basic drawing functions, HIGZ includes a PostScript + interface. Also included are C and FORTRAN header files. + --- cernlib-2006.dfsg.2.orig/debian/debhelper/libkernlib1-dev.links +++ cernlib-2006.dfsg.2/debian/debhelper/libkernlib1-dev.links @@ -0,0 +1 @@ +usr/include/kernlib.h usr/include/cfortran/kernlib.h --- cernlib-2006.dfsg.2.orig/debian/debhelper/libpacklib1-gfortran.install +++ cernlib-2006.dfsg.2/debian/debhelper/libpacklib1-gfortran.install @@ -0,0 +1,4 @@ +debian/tmp/usr/lib/libpacklib.so.1_gfortran.2006 +debian/tmp/usr/lib/libpacklib.so.1_gfortran +debian/tmp/usr/bin/kuesvr +debian/tmp/usr/share/man/man1/kuesvr.1 --- cernlib-2006.dfsg.2.orig/debian/debhelper/libpacklib1-dev.install +++ cernlib-2006.dfsg.2/debian/debhelper/libpacklib1-dev.install @@ -0,0 +1,23 @@ +debian/tmp/usr/lib/libpacklib.a +debian/tmp/usr/lib/libpacklib.so +debian/tmp/usr/include/cspack.h +debian/tmp/usr/include/hbook.h +debian/tmp/usr/include/kuip.h +debian/tmp/usr/include/minuit.h +debian/tmp/usr/include/packlib.h +debian/tmp/usr/include/zebra.h +debian/tmp/usr/include/fatmen.car +debian/tmp/usr/include/hbook.car +debian/tmp/usr/include/kuip.car +debian/tmp/usr/include/zebra.car +debian/tmp/usr/include/cspack/ +debian/tmp/usr/include/epio/ +debian/tmp/usr/include/fatmen/ +debian/tmp/usr/include/ffread/ +debian/tmp/usr/include/hbook/ +debian/tmp/usr/include/hepdb/ +debian/tmp/usr/include/kapack/ +debian/tmp/usr/include/kuip/ +debian/tmp/usr/include/minuit/ +debian/tmp/usr/include/zbook/ +debian/tmp/usr/include/zebra/ --- cernlib-2006.dfsg.2.orig/debian/debhelper/pawserv.install +++ cernlib-2006.dfsg.2/debian/debhelper/pawserv.install @@ -0,0 +1,4 @@ +debian/tmp/usr/sbin/zserv +debian/tmp/usr/sbin/pawserv +debian/tmp/usr/share/man/man8/zserv.8 +debian/tmp/usr/share/man/man8/pawserv.8 --- cernlib-2006.dfsg.2.orig/debian/debhelper/libmathlib2-dev.install +++ cernlib-2006.dfsg.2/debian/debhelper/libmathlib2-dev.install @@ -0,0 +1,4 @@ +debian/tmp/usr/lib/libmathlib.a +debian/tmp/usr/lib/libmathlib.so +debian/tmp/usr/include/gen.h +debian/tmp/usr/include/gen/ --- cernlib-2006.dfsg.2.orig/debian/debhelper/pawserv.dirs +++ cernlib-2006.dfsg.2/debian/debhelper/pawserv.dirs @@ -0,0 +1,2 @@ +usr/sbin +var/log/pawserv --- cernlib-2006.dfsg.2.orig/debian/debhelper/hepdb.README.debian +++ cernlib-2006.dfsg.2/debian/debhelper/hepdb.README.debian @@ -0,0 +1,10 @@ +Please be aware that some of the HEPDB utilities have been renamed +due to a name conflict with another Debian package (cdbackup). Here +is the mapping: + + cdbackup -> hepbackup + cdmake -> hepmake + cdmove -> hepmove + cdserv -> hepserv + +-- Kevin McCarty , Mon, 17 Jun 2002 --- cernlib-2006.dfsg.2.orig/debian/debhelper/pawserv.postinst +++ cernlib-2006.dfsg.2/debian/debhelper/pawserv.postinst @@ -0,0 +1,75 @@ +#!/bin/sh +# postinst script for pawserv +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `configure' +# * `abort-upgrade' +# * `abort-remove' `in-favour' +# +# * `abort-deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package +# +# quoting from the policy: +# Any necessary prompting should almost always be confined to the +# post-installation script, and should be protected with a conditional +# so that unnecessary prompting doesn't happen if a package's +# installation fails and the `postinst' is called with `abort-upgrade', +# `abort-remove' or `abort-deconfigure'. + +# Source debconf library. +. /usr/share/debconf/confmodule + +case "$1" in + configure) + + LOGDIR=/var/log/pawserv + LOGFILE=/var/log/pawserv.log + PAWSERV="pawserv\tstream\ttcp\tnowait\troot\t/usr/sbin/pawserv\tpawserv" + ZSERV="zserv\tstream\ttcp\tnowait\troot\t/usr/sbin/zserv\tzserv" + OFF='## ' + + db_get pawserv/which_servers + + if [ "$RET" = Pawserv ] ; then + ZSERV="${OFF}${ZSERV}" + fi + if [ "$RET" = Zserv ] ; then + PAWSERV="${OFF}${PAWSERV}" + fi + + # Change permissions of zserv/pawserv log directory and log file + touch "$LOGFILE" + chmod 0600 "$LOGFILE" + dpkg-statoverride --add --update root root 0700 "$LOGDIR" \ + > /dev/null 2>&1 || true + + # Add zserv/pawserv to inetd.conf + update-inetd --add "$ZSERV" + update-inetd --add "$PAWSERV" + ;; + + abort-upgrade|abort-remove|abort-deconfigure) + + ;; + + *) + echo "postinst called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + + --- cernlib-2006.dfsg.2.orig/debian/debhelper/pawserv.README.debian +++ cernlib-2006.dfsg.2/debian/debhelper/pawserv.README.debian @@ -0,0 +1,36 @@ +You can choose which of these servers to run via Debconf. If you do not +see a Debconf dialog at installation time, or if you want to change your +original choice, run "dpkg-reconfigure -plow pawserv". The default is to +run only pawserv. Of course you can also make this choice by editing +the file /etc/inetd.conf manually. + +Notes on pawserv +---------------- + +This program is the server for distributed PAW, which runs via inetd. +Basically it allows a PAW client running on a remote host to access local +files. The server must run as root in order to permit user logins (as it must +be able to read the /etc/shadow file). Since this code has not, to my +knowledge, been audited for security, and because the remote PAW protocol +transmits passwords in cleartext, it would be wise to run pawserv only within a +LAN with trusted users that doesn't permit access from the Internet at large. + +Notes on zserv +-------------- + +This is the server program for the ZEBRA FTP (zftp) protocol of CERNLIB, which +runs via inetd. Except for listening on a different port and special treatment +of some files created by CERNLIB programs, it is similar to an FTP daemon. +The same security-related comments apply as above (the two programs actually +run from the same binary). + + +These programs by default write one log file per minute into /tmp. +In Debian, this behavior has been modified so that they write into a +/var/log/pawserv directory with permissions 0700. A cron script +/etc/cron.hourly/pawserv is provided to concatenate these per-minute log +files into /var/log/pawserv.log every hour (the names are still +/var/log/pawserv and pawserv.log even if you only run zserv). + +-- Kevin McCarty , Sun, 06 March 2005 + --- cernlib-2006.dfsg.2.orig/debian/debhelper/libmathlib2-dev.links +++ cernlib-2006.dfsg.2/debian/debhelper/libmathlib2-dev.links @@ -0,0 +1 @@ +usr/include/gen.h usr/include/cfortran/gen.h --- cernlib-2006.dfsg.2.orig/debian/debhelper/cernlib-base.docs +++ cernlib-2006.dfsg.2/debian/debhelper/cernlib-base.docs @@ -0,0 +1,3 @@ +debian/deadpool.txt +debian/README.64-bit +debian/changelog.Debian.old --- cernlib-2006.dfsg.2.orig/debian/debhelper/libgraflib1-gfortran.install +++ cernlib-2006.dfsg.2/debian/debhelper/libgraflib1-gfortran.install @@ -0,0 +1,2 @@ +debian/tmp/usr/lib/libgraflib.so.1_gfortran.2006 +debian/tmp/usr/lib/libgraflib.so.1_gfortran --- cernlib-2006.dfsg.2.orig/debian/debhelper/nypatchy.install +++ cernlib-2006.dfsg.2/debian/debhelper/nypatchy.install @@ -0,0 +1,23 @@ +debian/tmp/usr/bin/fcasplit +debian/tmp/usr/bin/nycheck +debian/tmp/usr/bin/nydiff +debian/tmp/usr/bin/nyindex +debian/tmp/usr/bin/nylist +debian/tmp/usr/bin/nymerge +debian/tmp/usr/bin/nypatchy +debian/tmp/usr/bin/nyshell +debian/tmp/usr/bin/nysynopt +debian/tmp/usr/bin/nytidy +debian/tmp/usr/bin/yexpand +debian/tmp/usr/share/man/man1/fcasplit.1 +debian/tmp/usr/share/man/man1/nycheck.1 +debian/tmp/usr/share/man/man1/nydiff.1 +debian/tmp/usr/share/man/man1/nyindex.1 +debian/tmp/usr/share/man/man1/nylist.1 +debian/tmp/usr/share/man/man1/nymerge.1 +debian/tmp/usr/share/man/man1/nypatchy.1 +debian/tmp/usr/share/man/man1/nyshell.1 +debian/tmp/usr/share/man/man1/nysynopt.1 +debian/tmp/usr/share/man/man1/nytidy.1 +debian/tmp/usr/share/man/man1/yexpand.1 +debian/tmp/usr/share/man/man1/ypatchy.1 --- cernlib-2006.dfsg.2.orig/debian/debhelper/pawserv.cron.hourly +++ cernlib-2006.dfsg.2/debian/debhelper/pawserv.cron.hourly @@ -0,0 +1,44 @@ +#!/bin/bash + +# Cron script to concatenate pawserv / zserv's log files (it produces +# one per minute) into /var/log/pawserv.log + +# Author: Kevin McCarty, 2005-03-06 +# License: GPL version 2 or later (see /usr/share/common-licenses/GPL) + +PATH=/bin:/usr/bin:/sbin:/usr/sbin +BINARY=/usr/sbin/zserv +LOGDIR=/var/log/pawserv +LOGFILE="${LOGDIR}.log" + +[ -d "$LOGDIR" ] || exit 0 + +cd "$LOGDIR" +LOGS="$(find . -maxdepth 1 -type f -a -name zs\*.log -a -mmin +10 | sort)" +[ -n "$LOGS" ] || exit 0 + +set -e +umask 077 + +for log in $LOGS ; do + if [ -s "$log" ] ; then + YR="$( echo "$log" | cut -b 5-6)" + MON="$(echo "$log" | cut -b 7-8)" + DAY="$(echo "$log" | cut -b 9-10)" + HR="$( echo "$log" | cut -b 11-12)" + MIN="$(echo "$log" | cut -b 13-14)" + echo "20${YR}-${MON}-${DAY} at ${HR}:${MIN}" >> "$LOGFILE" + cat "$log" >> "$LOGFILE" + fi + + rm -f "$log" +done + +# If the package has been uninstalled and there are no more pending logs, +# try removing the log directory. + +if [ ! -x "$BINARY" ] ; then + rmdir "$LOGDIR" 2> /dev/null || true +fi + +exit 0 --- cernlib-2006.dfsg.2.orig/debian/debhelper/libgrafx11-1-dev.install +++ cernlib-2006.dfsg.2/debian/debhelper/libgrafx11-1-dev.install @@ -0,0 +1,5 @@ +debian/tmp/usr/lib/libgrafX11.a +debian/tmp/usr/lib/libgrafX11.so +debian/tmp/usr/include/higz.h +debian/tmp/usr/include/higz.car +debian/tmp/usr/include/higz/ --- cernlib-2006.dfsg.2.orig/debian/debhelper/dzedit.install +++ cernlib-2006.dfsg.2/debian/debhelper/dzedit.install @@ -0,0 +1,4 @@ +debian/tmp/usr/bin/dzeX11 +debian/tmp/usr/bin/dzedit +debian/tmp/usr/share/man/man1/dzedit.1 +debian/tmp/usr/share/man/man1/dzeX11.1 --- cernlib-2006.dfsg.2.orig/debian/debhelper/libgrafx11-1-dev.dirs +++ cernlib-2006.dfsg.2/debian/debhelper/libgrafx11-1-dev.dirs @@ -0,0 +1,3 @@ +usr/lib +usr/include +usr/include/cfortran --- cernlib-2006.dfsg.2.orig/debian/debhelper/libpacklib-lesstif1-gfortran.install +++ cernlib-2006.dfsg.2/debian/debhelper/libpacklib-lesstif1-gfortran.install @@ -0,0 +1,2 @@ +debian/tmp/usr/lib/libpacklib-lesstif.so.1_gfortran.2006 +debian/tmp/usr/lib/libpacklib-lesstif.so.1_gfortran --- cernlib-2006.dfsg.2.orig/debian/debhelper/pawserv.logrotate +++ cernlib-2006.dfsg.2/debian/debhelper/pawserv.logrotate @@ -0,0 +1,9 @@ +/var/log/pawserv.log { + weekly + rotate 4 + missingok + notifempty + compress + copytruncate +} + --- cernlib-2006.dfsg.2.orig/debian/debhelper/nypatchy.links +++ cernlib-2006.dfsg.2/debian/debhelper/nypatchy.links @@ -0,0 +1 @@ +usr/bin/nypatchy usr/bin/ypatchy --- cernlib-2006.dfsg.2.orig/debian/debhelper/pawserv.prerm +++ cernlib-2006.dfsg.2/debian/debhelper/pawserv.prerm @@ -0,0 +1,40 @@ +#! /bin/sh +# prerm script for pawserv +# +# see: dh_installdeb(1) + +set -e + +# summary of how this script can be called: +# * `remove' +# * `upgrade' +# * `failed-upgrade' +# * `remove' `in-favour' +# * `deconfigure' `in-favour' +# `removing' +# +# for details, see http://www.debian.org/doc/debian-policy/ or +# the debian-policy package + + +case "$1" in + remove|upgrade|deconfigure) + update-inetd --remove '^.*/usr/sbin/zserv.*$' + update-inetd --remove '^.*/usr/sbin/pawserv.*$' + ;; + failed-upgrade) + ;; + *) + echo "prerm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + + --- cernlib-2006.dfsg.2.orig/debian/debhelper/libgrafx11-1-dev.examples +++ cernlib-2006.dfsg.2/debian/debhelper/libgrafx11-1-dev.examples @@ -0,0 +1 @@ +src/cfortran/Examples/chigz-example.c --- cernlib-2006.dfsg.2.orig/debian/debhelper/libmathlib2-dev.dirs +++ cernlib-2006.dfsg.2/debian/debhelper/libmathlib2-dev.dirs @@ -0,0 +1,3 @@ +usr/lib +usr/include +usr/include/cfortran --- cernlib-2006.dfsg.2.orig/debian/debhelper/kuipc.install +++ cernlib-2006.dfsg.2/debian/debhelper/kuipc.install @@ -0,0 +1,2 @@ +debian/tmp/usr/bin/kuipc +debian/tmp/usr/share/man/man1/kuipc.1 --- cernlib-2006.dfsg.2.orig/debian/debhelper/libgrafx11-1-gfortran.install +++ cernlib-2006.dfsg.2/debian/debhelper/libgrafx11-1-gfortran.install @@ -0,0 +1,2 @@ +debian/tmp/usr/lib/libgrafX11.so.1_gfortran.2006 +debian/tmp/usr/lib/libgrafX11.so.1_gfortran --- cernlib-2006.dfsg.2.orig/debian/debhelper/libpacklib1-gfortran.README.debian +++ cernlib-2006.dfsg.2/debian/debhelper/libpacklib1-gfortran.README.debian @@ -0,0 +1,19 @@ +Notes on libpacklib1-gfortran: +------------------------------ + +1) If you are looking for the Motif-based version of KUIP (Kit for a User +Interface Package), you will find it in the package +libpacklib-lesstif1-gfortran. It was split out from this package so that users +aren't forced to install the Lesstif and X11 libraries if they only want to use +Packlib for a text-based interface. + +2) This package includes the kuesvr "edit server" binary. You should be aware +that the version of the kuesvr "edit server" binary provided by Debian has +command-line flags that are incompatible with those of the version provided by +CERN. It was necessary to introduce this incompatibility for security reasons. +For this reason, and in conformance with Debian Policy, Debian's kuesvr is +installed in /usr/lib/libpacklib1-gfortran/, outside of $PATH, where only +Debian's version of libpacklib will find it. See "man 1 kuesvr" for more +information. + +--Kevin McCarty , Wed, 8 Aug 2007 --- cernlib-2006.dfsg.2.orig/debian/debhelper/cernlib-base.TODO +++ cernlib-2006.dfsg.2/debian/debhelper/cernlib-base.TODO @@ -0,0 +1,45 @@ +To do when possible: +-------------------- + +* Install upstream's changelogs (if I can find them in any sort of + coherent form) + +* cernlib script should be tested to make sure it supports upstream versions + of CERNLIB + +* If at some point I decide to resurrect hepdb and fatmen binary packages: + (this will not happen unless I get a specific request by someone who knows + how they are supposed to be set up)... + - Write man pages for hepdb and fatmen binaries + - Set up hepserv, fatsrv with init scripts, etc. + +* Provide three methods of calling the cernlib script: + + - the default, resulting in + -Wl,--static -l(cern libs) -Wl,--dynamic -l(other libs) + This case should be used in linking programs in Debian packages that + require static linking against CERN libs, e.g. PAW on 64-bit arches. + + - the static case, with the -static or -safe flag, resulting in + -l(cern libs) -l(all other libs, recursively) + + - the dynamic case, with the -dy flag, resulting only in linkage to the libs + specified on the cernlib command line. This case should be used in linking + most programs in Debian packages, and also in linking shared libraries in + Debian packages, in order to eliminate superfluous shared library + dependencies. This will require a rewrite of the SharedLibraryBuild + macro in src/config/biglib.rules, patch 800. + + +To do ONLY if someone employs me at a high salary for these specific purposes: +------------------------------------------------------------------------------ + +* Fix the whole creaky, out-of-date, Imake-based build system to use GNU + libtool/automake/autoconf. + +* Make COMIS, etc., 64-bit clean so Paw (et al.) work on the architectures + alpha/amd64/ia64/ppc64/s390x/sparc64 - for bonus points, when dynamically + linked. The current state of 64-bit platforms is that Paw only works on + little-endian 64-bit arches (alpha/amd64/ia64), thanks to Harald Vogt, and + only when statically linked. + --- cernlib-2006.dfsg.2.orig/debian/debhelper/libkernlib1-dev.install +++ cernlib-2006.dfsg.2/debian/debhelper/libkernlib1-dev.install @@ -0,0 +1,6 @@ +debian/tmp/usr/lib/libkernlib.a +debian/tmp/usr/lib/libkernlib.so +debian/tmp/usr/include/kernlib.h +debian/tmp/usr/include/kernbit/ +debian/tmp/usr/include/kerngen/ +debian/tmp/usr/include/kernnum/ --- cernlib-2006.dfsg.2.orig/debian/debhelper/libmathlib2-gfortran.install +++ cernlib-2006.dfsg.2/debian/debhelper/libmathlib2-gfortran.install @@ -0,0 +1,2 @@ +debian/tmp/usr/lib/libmathlib.so.2_gfortran.2006 +debian/tmp/usr/lib/libmathlib.so.2_gfortran --- cernlib-2006.dfsg.2.orig/debian/debhelper/zftp.README.debian +++ cernlib-2006.dfsg.2/debian/debhelper/zftp.README.debian @@ -0,0 +1,17 @@ +Notes on zftp: +-------------- + +This is the client program for the ZEBRA FTP (zftp) protocol of CERNLIB. +Like other FTP-type programs, the ZFTP protocol transmits passwords in +cleartext. It would therefore be wise to use zftp only within a closed LAN +with trusted users. To connect to a remote host, the host must be running +the zserv daemon (for Debian, part of the pawserv package) from inetd. See +also the README.Debian file for that package. + +ZFTP by default converts all filenames to lowercase (it does not respect +the KUIP command "FILECASE KEEP"), which is potentially a problem on case- +sensitive Linux and UNIX machines. Some of its interactive commands, but not +all, accept a 'C' argument to preserve filename cases; see the ZFTP online +help for individual commands for details. + +-- Kevin McCarty , Mon, 22 Jul 2002 --- cernlib-2006.dfsg.2.orig/debian/debhelper/kxterm.install +++ cernlib-2006.dfsg.2/debian/debhelper/kxterm.install @@ -0,0 +1,5 @@ +debian/tmp/usr/bin/kxterm +debian/tmp/usr/share/pixmaps/kxterm48x48.xpm +debian/tmp/usr/share/pixmaps/kxterm32x32.xpm +debian/tmp/usr/share/man/man1/kxterm.1 +debian/tmp/etc/X11/app-defaults/KXterm --- cernlib-2006.dfsg.2.orig/debian/debhelper/libkernlib1-dev.dirs +++ cernlib-2006.dfsg.2/debian/debhelper/libkernlib1-dev.dirs @@ -0,0 +1,3 @@ +usr/lib +usr/include +usr/include/cfortran --- cernlib-2006.dfsg.2.orig/debian/debhelper/libgrafx11-1-dev.links +++ cernlib-2006.dfsg.2/debian/debhelper/libgrafx11-1-dev.links @@ -0,0 +1 @@ +usr/include/higz.h usr/include/cfortran/higz.h --- cernlib-2006.dfsg.2.orig/debian/debhelper/libpacklib1-gfortran.dirs +++ cernlib-2006.dfsg.2/debian/debhelper/libpacklib1-gfortran.dirs @@ -0,0 +1,2 @@ +usr/lib/libpacklib1-gfortran +usr/share/man/man7 --- cernlib-2006.dfsg.2.orig/debian/debhelper/pawserv.postrm +++ cernlib-2006.dfsg.2/debian/debhelper/pawserv.postrm @@ -0,0 +1,35 @@ +#! /bin/sh +# postrm script for pawserv +# +# see: dh_installdeb(1) + +set -e + +case "$1" in + remove|upgrade|failed-upgrade|abort-install|abort-upgrade|disappear) + ;; + purge) + # Clean up logs. + LOGDIR=/var/log/pawserv + LOGFILE=/var/log/pawserv.log + + if [ -e "$LOGDIR" ] ; then + rmdir "$LOGDIR" || rm -r "$LOGDIR" + fi + dpkg-statoverride --remove "$LOGDIR" > /dev/null 2>&1 || true + rm -f "$LOGFILE" + ;; + *) + echo "postrm called with unknown argument \`$1'" >&2 + exit 1 + ;; +esac + +# dh_installdeb will replace this with shell code automatically +# generated by other debhelper scripts. + +#DEBHELPER# + +exit 0 + + --- cernlib-2006.dfsg.2.orig/debian/debhelper/zftp.install +++ cernlib-2006.dfsg.2/debian/debhelper/zftp.install @@ -0,0 +1,2 @@ +debian/tmp/usr/bin/zftp +debian/tmp/usr/share/man/man1/zftp.1 --- cernlib-2006.dfsg.2.orig/debian/debhelper/cernlib-base-dev.install +++ cernlib-2006.dfsg.2/debian/debhelper/cernlib-base-dev.install @@ -0,0 +1,21 @@ +debian/tmp/usr/bin/cernlib +debian/tmp/usr/share/man/man1/cernlib.1 +debian/tmp/usr/share/aclocal/cernlib.m4 +debian/cernlib-debian.mk usr/share/cernlib +debian/add-ons/cernlib.mk usr/share/cernlib +debian/add-ons/bin/remove-deadpool usr/share/cernlib +debian/add-ons/bin/gmake usr/share/cernlib +src/config/Imake.* usr/share/cernlib/config +src/config/MacOSX.* usr/share/cernlib/config +src/config/Project.tmpl usr/share/cernlib/config +src/config/biglib.rules usr/share/cernlib/config +src/config/fortran.rules usr/share/cernlib/config +src/config/host.def usr/share/cernlib/config +src/config/imake_boot usr/share/cernlib/config +src/config/linux.cf usr/share/cernlib/config +src/config/lnxLib.rules usr/share/cernlib/config +src/config/noop.rules usr/share/cernlib/config +src/config/oldlib.rules usr/share/cernlib/config +src/config/site.def usr/share/cernlib/config +src/config/xf86.rules usr/share/cernlib/config +src/config/README usr/share/cernlib/config --- cernlib-2006.dfsg.2.orig/debian/debhelper/libpacklib1-dev.dirs +++ cernlib-2006.dfsg.2/debian/debhelper/libpacklib1-dev.dirs @@ -0,0 +1,3 @@ +usr/lib +usr/include +usr/include/cfortran --- cernlib-2006.dfsg.2.orig/debian/debhelper/fatmen.install +++ cernlib-2006.dfsg.2/debian/debhelper/fatmen.install @@ -0,0 +1,5 @@ +debian/tmp/usr/bin/fatback +debian/tmp/usr/bin/fatmen +debian/tmp/usr/bin/fatnew +debian/tmp/usr/bin/fatsend +debian/tmp/usr/bin/fatsrv --- cernlib-2006.dfsg.2.orig/debian/debhelper/libpacklib1-dev.links +++ cernlib-2006.dfsg.2/debian/debhelper/libpacklib1-dev.links @@ -0,0 +1,6 @@ +usr/include/cspack.h usr/include/cfortran/cspack.h +usr/include/hbook.h usr/include/cfortran/hbook.h +usr/include/kuip.h usr/include/cfortran/kuip.h +usr/include/minuit.h usr/include/cfortran/minuit.h +usr/include/packlib.h usr/include/cfortran/packlib.h +usr/include/zebra.h usr/include/cfortran/zebra.h --- cernlib-2006.dfsg.2.orig/debian/debhelper/cernlib-base.README.debian +++ cernlib-2006.dfsg.2/debian/debhelper/cernlib-base.README.debian @@ -0,0 +1,269 @@ +In order to package the CERN libraries in an acceptable way, it was necessary +to make a large number of changes to the installation. Most of these changes +should be transparent to the user, but they are nevertheless noted here. + +If you are compiling code and linking it against CERN libraries on a 64-bit +platform, please see also the file README.64-bit in this directory. + +For more information, you may also wish to read the CERNLIB on Debian +web pages at http://people.debian.org/~kmccarty/cernlib/ . + +CONTENTS + +0) Turning on syntax highlighting in Vim +1) Package layout +2) Using shared libraries +3) Meeting the Filesystem Hierarchy Standard +4) Mixing Debian and CERN versions of CERNLIB +5) Removal of non-free code + + +0) Turning on syntax highlighting in Vim + +The cernlib-base package ships syntax highlighting files for KUIPC and +PAW macro (kumacs) files, but it is not turned on by default. For it to +be made usable, the "vim-addon-manager" package should be installed. +To turn on the syntax highlighting as a normal user, run + + vim-addons install cernlib-base + +To turn it on by default for ALL users, as root run + + vim-addons -w install cernlib-base + + +1) Package layout + +To install parts of CERNLIB, you may use one or more of these metapackages: + +cernlib-core - CERNLIB main programs and libraries +cernlib-core-dev - CERNLIB development headers, tools and static libraries +cernlib-montecarlo - CERNLIB Monte Carlo libraries (both shared and static) +cernlib - All of the above plus Geant 3.21 +cernlib-extras - A few extra programs not of interest to most people + +or for finer-grained installation, see the list below of CERNLIB systems and +the corresponding Debian packages in which they are included. + +SYSTEM or program Debian Package +----------------- -------------- +COMIS libpawlib2-gfortran, libpawlib2-dev +CSPACK libpacklib1-gfortran, libpacklib1-dev + |_ pawserv, zserv pawserv + \_ zftp zftp +DZDOC libgraflib1-gfortran, libgraflib1-dev + \_ dzeX11, dzedit dzedit +EPIO libpacklib1-gfortran, libpacklib1-dev +FATMEN libpacklib1-gfortran, libpacklib1-dev + \_ fatmen, fatsrv, ... [Not currently packaged] +FFREAD libpacklib1-gfortran, libpacklib1-dev +GEANT libgeant321-2-gfortran, libgeant321-2-dev, + geant321, geant321-data, geant321-doc +HBOOK libpacklib1-gfortran, libpacklib1-dev +HEPDB libpacklib1-gfortran, libpacklib1-dev + \_ hepdb, cdbackup, ...[Not currently packaged] +HIGZ libgrafx11-1-gfortran, libgrafx11-1-dev +HPLOT libgraflib1-gfortran, libgraflib1-dev +KAPACK libpacklib1-gfortran, libpacklib1-dev +KERNLIB libkernlib1-gfortran, libkernlib1-dev +KUIP libpacklib1-gfortran, libpacklib1-dev, + | libpacklib-lesstif1-gfortran [*], + | libpacklib-lesstif1-dev [*] + |_ kuesvr libpacklib1-gfortran, libpacklib1-dev + |_ kuipc kuipc + \_ kxterm kxterm +MATHLIB libmathlib2-gfortran, libmathlib2-dev +MINUIT libpacklib1-gfortran, libpacklib1-dev + / libcojets2-gfortran, libeurodec1-gfortran, + | libherwig59-2-gfortran, libisajet758-3-gfortran, +Monte Carlo | libpdflib804-2-gfortran, libphotos202-1-gfortran, + | libphtools2-gfortran, montecarlo-data + \ (and -dev packages) +NYPATCHY nypatchy +PAW libpawlib2-gfortran, libpawlib2-dev, + | libpawlib-lesstif3-gfortran [**], + | libpawlib-lesstif3-dev [**] + \_ PAW, Paw++ paw, paw++, paw-common, paw-demos +SIGMA libpawlib2-gfortran, libpawlib2-dev +ZBOOK libpacklib1-gfortran, libpacklib1-dev +ZEBRA libpacklib1-gfortran, libpacklib1-dev + +[*] libpacklib-lesstif1* contains the library libpacklib-lesstif, which is the +graphical interface component of packlib's KUIP subsystem. This has been split +out into a separate library for Debian so that the packlib packages need not +depend on X and Lesstif libraries. + +[**] libpawlib-lesstif3* contains portions of Pawlib that depend upon the +Lesstif library. The remainder of Pawlib is found in libpawlib2*, whose GUI +depends only on the basic X11 libraries. + +Static libraries and header files for development are available from the +CERNLIB development packages: For each lib*-gfortran package there exists a +corresponding lib*-dev package, e.g., libpacklib1-dev. You will need to +install the appropriate development packages in order to compile programs +that link against CERNLIB libraries. + +The "-gfortran" suffix on the runtime library packages indicates that they are +now compiled with gfortran. You will need to build your own code with gfortran +in order to link it against these packages. + +See also the README.Debian files for specific packages. + + +2) Using shared libraries + +The default installation of CERNLIB creates only static libraries on Linux, +resulting in unnecessary code bloat and redundancy. The Debian packages of +CERNLIB have been altered to use shared libraries. In some cases this may +cause unexpected compilation failure of user programs linking against them, +since the linker is more strict about what it will accept in DLLs than in +static code. Please file a bug report on the appropriate library package in +any such case. + +Since the CERNLIB libraries were not written with the intent of having them be +shared, some of them may have bugs when linked against dynamically, especially +on 64-bit architectures. In particular, see the README.Debian file for the +libpawlib2-dev package and the file README.64-bit in this directory. +So when linking your own programs against CERN libraries, you may want to use +the -static compiler flag. (The 'cernlib' script in the cernlib-base-dev +package will currently do this for you automatically unless you give cernlib +the -dy or -safe flag.) + +Because of the problems with making the CERN libraries shared on 64-bit +platforms, the paw and paw++ packages available on those platforms have been +statically linked against CERN libraries. + + +3) Meeting the Filesystem Hierarchy Standard + +The upstream authors of CERNLIB have the CERN libraries and programs install +into a particular base directory $CERN_ROOT, usually /cern/ (where + is either a year or one of {old,pro,dev}). Below that are the +subdirectories bin, lib, and shlib (among others). For the Debian packaging, +in order to comply with Debian policy and the FHS, everything has been moved. +(The FHS specification may be found in the debian-policy package if you are +interested.) + +The programs in $CERN_ROOT/bin have been placed into /usr/bin and /usr/sbin; +static libraries in $CERN_ROOT/lib and shared libraries (which upstream does +not generate) have been put into /usr/lib; data files in $CERN_ROOT/lib have +been moved to /usr/share/; header files have been moved to +/usr/include or a subdirectory thereof; documentation has been moved to +/usr/share/doc/. CERNLIB programs have been altered for Debian to +accommodate these changes, when necessary. + +Some third-party programs that use CERNLIB may rely on the environment +variables $CERN, $CERN_LEVEL, etc. For compatibility with the file layout in +Debian packages, you may set these (in .bashrc or .tcshrc, for instance) to +have the following values: + + bash, sh, zsh, ksh, etc. csh, tcsh + ------------------------ --------- + export CERN=/usr setenv CERN /usr + export CERN_LEVEL=. setenv CERN_LEVEL . + export CERN_ROOT=/usr setenv CERN_ROOT /usr + + +If a third-party piece of software is particularly poorly written and even this +does not help, you may try running the script + + /usr/share/doc/cernlib-base/examples/install-cernlib-dirs.sh + +as root. This script will violate the FHS by creating a top-level /cern +directory and putting symlinks in it that point to the appropriate places in +the file hierarchy (for instance, /cern/2006deb/lib -> /usr/lib). If you do +not already have existing directories or symlinks named /cern/dev, /cern/pro, +/cern/old, or /cern/2006, the script will also create them as symlinks pointing +to /cern/2006deb, for compatibility. You may then, for instance, set the +above environment variables as + + CERN=/cern + CERN_LEVEL=2006 + CERN_ROOT="$CERN/$CERN_LEVEL" + +It is possible to run the script while already having another version of +CERNLIB installed under /cern/, as long as "whatever" is not +"2006deb". However, I make ABSOLUTELY NO GUARANTEES OR WARRANTY about the +safety of running the script; use it AT YOUR OWN RISK. It is quite possible +that there are corner cases I haven't thought of that will cause it to +overwrite existing data. + +Once the script has been run, you may notice dead symlinks in the directory +/cern/2006deb/include. This is to be expected if you have not installed every +single cernlib -dev package. (If the script pruned dead symlinks, you might +run it, then later install another -dev package and find that the symlink to +the headers of that package did not exist.) + +If you want to put the cern directory skeleton somewhere other than /cern +(for instance, /opt/cern), give it an optional argument specifying the desired +target: e.g., to create /opt/cern, run + + ./install-cernlib-dirs.sh /opt + +[In this example and the rest of this section, we assume your current working +directory is /usr/share/doc/cernlib-base/examples.] + +If you have run the script and later decide you want to undo its effects, you +may run it with the --uninstall argument: + + ./install-cernlib-dirs.sh --uninstall + +To uninstall cern directories from a location other than /cern, give an +optional directory argument. Thus, to uninstall /opt/cern, run + + ./install-cernlib-dirs.sh --uninstall /opt + +Note that the uninstall routine will not remove any directories above "cern" +that the install routine created. That is, if /opt did not originally exist, +the above command will nevertheless not remove it. + +Should you wish to create or uninstall a skeleton CERNLIB directory with a +value of $CERN_LEVEL other than 2006, you may request a specific value +with the --year flag. For instance, to uninstall a skeleton /cern directory +that was originally created with CERN_LEVEL 2005, you could run + + ./install-cernlib-dirs.sh --year 2005 --uninstall + +Again, I make ABSOLUTELY NO GUARANTEES OR WARRANTY about the safety of running +the script in any manner. It is quite possible that there are corner cases I +haven't thought of that will cause it to delete existing data. + + +4) Mixing Debian and CERN versions of CERNLIB + +You can still use Debian's cernlib script (see the man page for cernlib(1) in +the cernlib-base-dev package) to link libraries from an upstream version of +CERNLIB. Assuming that you have a non-Debian CERNLIB installation in +/opt/cern/2006 for instance, you would first define $CERN appropriately: + export CERN=/opt/cern +then call the cernlib script with the appropriate version number: + gfortran -o myprogram myprogram.F `cernlib -v 2006 library1 library2` +I have not tested this, so file a bug if there are problems. + +You should be aware that the version of the kuesvr "edit server" binary +provided by Debian has command-line flags that are incompatible with those of +the version provided by CERN. It was necessary to introduce this +incompatibility for security reasons. For this reason, and in conformance with +Debian Policy, Debian's kuesvr is installed in /usr/lib/libpacklib1/, outside +of $PATH, where only Debian's version of libpacklib can find it. If you have +the libpacklib1-gfortran package installed, see "man 1 kuesvr" for more +information. + + +5) Removal of non-free code + +Unfortunately not all of CERNLIB is under the same license. Although CERN has +put CERNLIB under the GPL, some pieces of source code still state that they are +licensed by other entities. Much non-free code, code with ambiguous licensing, +and GPL-incompatible code has been replaced or removed from the upstream +source in order to permit CERNLIB packages to be in the main Debian archive. +The copyright file in this directory and the README.Debian files for individual +packages (particularly, the montecarlo-base package) are more specific. A +complete list of removed files may be found in the file + + /usr/share/doc/cernlib-base/deadpool.txt + +(or in the source package, in cernlib-/debian/deadpool.txt). + +-- Kevin McCarty , Wed, 8 Aug 2007 + --- cernlib-2006.dfsg.2.orig/debian/debhelper/libkernlib1-gfortran.install +++ cernlib-2006.dfsg.2/debian/debhelper/libkernlib1-gfortran.install @@ -0,0 +1,2 @@ +debian/tmp/usr/lib/libkernlib.so.1_gfortran.2006 +debian/tmp/usr/lib/libkernlib.so.1_gfortran --- cernlib-2006.dfsg.2.orig/debian/debhelper/hepdb.install +++ cernlib-2006.dfsg.2/debian/debhelper/hepdb.install @@ -0,0 +1,5 @@ +debian/tmp/usr/bin/hepbackup +debian/tmp/usr/bin/hepdb +debian/tmp/usr/bin/hepmake +debian/tmp/usr/bin/hepmove +debian/tmp/usr/bin/hepserv --- cernlib-2006.dfsg.2.orig/debian/debhelper/libgraflib1-dev.links +++ cernlib-2006.dfsg.2/debian/debhelper/libgraflib1-dev.links @@ -0,0 +1,2 @@ +usr/include/graflib.h usr/include/cfortran/graflib.h +usr/include/hplot.h usr/include/cfortran/hplot.h --- cernlib-2006.dfsg.2.orig/debian/debhelper/cernlib-base-dev.dirs +++ cernlib-2006.dfsg.2/debian/debhelper/cernlib-base-dev.dirs @@ -0,0 +1,2 @@ +usr/share/aclocal +usr/bin --- cernlib-2006.dfsg.2.orig/debian/debhelper/libpacklib-lesstif1-dev.install +++ cernlib-2006.dfsg.2/debian/debhelper/libpacklib-lesstif1-dev.install @@ -0,0 +1,2 @@ +debian/tmp/usr/lib/libpacklib-lesstif.a +debian/tmp/usr/lib/libpacklib-lesstif.so --- cernlib-2006.dfsg.2.orig/debian/debhelper/libgraflib1-dev.install +++ cernlib-2006.dfsg.2/debian/debhelper/libgraflib1-dev.install @@ -0,0 +1,6 @@ +debian/tmp/usr/lib/libgraflib.a +debian/tmp/usr/lib/libgraflib.so +debian/tmp/usr/include/graflib.h +debian/tmp/usr/include/hplot.h +debian/tmp/usr/include/dzdoc/ +debian/tmp/usr/include/hplot/ --- cernlib-2006.dfsg.2.orig/debian/debhelper/libgraflib1-dev.examples +++ cernlib-2006.dfsg.2/debian/debhelper/libgraflib1-dev.examples @@ -0,0 +1 @@ +src/cfortran/Examples/chplot-example.c --- cernlib-2006.dfsg.2.orig/debian/debhelper/libpacklib1-dev.README.debian +++ cernlib-2006.dfsg.2/debian/debhelper/libpacklib1-dev.README.debian @@ -0,0 +1,14 @@ +Notes on libpacklib1-dev: +------------------------- + +If you are looking for the Motif-based version of KUIP (Kit for a User +Interface Package), you will find it in the package libpacklib-lesstif1-dev. +It was split out from this package so that users aren't forced to install the +Lesstif and X11 libraries if they only want to use Packlib for a text-based +interface. + +If you are compiling code on a 64-bit platform, especially if using ZEBRA +routines, please also see the file README.64-bit . + +--Kevin McCarty , Wed, 8 Aug 2007 + --- cernlib-2006.dfsg.2.orig/debian/debhelper/libpacklib1-dev.docs +++ cernlib-2006.dfsg.2/debian/debhelper/libpacklib1-dev.docs @@ -0,0 +1 @@ +debian/README.64-bit --- cernlib-2006.dfsg.2.orig/debian/debhelper/libpacklib1-dev.examples +++ cernlib-2006.dfsg.2/debian/debhelper/libpacklib1-dev.examples @@ -0,0 +1,8 @@ +src/cfortran/Examples/chbook-example.c +src/cfortran/Examples/hbook-cwn.c +src/cfortran/Examples/hbook-cwnc.c +src/cfortran/Examples/hbook-ntuple.c +src/cfortran/Examples/minuit-fcn.c +src/cfortran/Examples/minuit-fcn.f +src/cfortran/Examples/minuit-main.c +src/cfortran/Examples/read_rwntuple.c --- cernlib-2006.dfsg.2.orig/debian/debhelper/cernlib-base.install +++ cernlib-2006.dfsg.2/debian/debhelper/cernlib-base.install @@ -0,0 +1 @@ +debian/add-ons/vim/* usr/share/vim --- cernlib-2006.dfsg.2.orig/debian/debhelper/pawserv.config +++ cernlib-2006.dfsg.2/debian/debhelper/pawserv.config @@ -0,0 +1,10 @@ +#!/bin/sh -e + +# Source debconf library. +. /usr/share/debconf/confmodule + +db_input low pawserv/which_servers || true +db_go + +exit 0 + --- cernlib-2006.dfsg.2.orig/debian/debhelper/libgraflib1-dev.dirs +++ cernlib-2006.dfsg.2/debian/debhelper/libgraflib1-dev.dirs @@ -0,0 +1,3 @@ +usr/lib +usr/include +usr/include/cfortran --- cernlib-2006.dfsg.2.orig/debian/debhelper/cernlib-base.examples +++ cernlib-2006.dfsg.2/debian/debhelper/cernlib-base.examples @@ -0,0 +1 @@ +debian/add-ons/bin/install-cernlib-dirs.sh --- cernlib-2006.dfsg.2.orig/debian/patches/103-ignore-overly-long-macro-in-gen.h.dpatch +++ cernlib-2006.dfsg.2/debian/patches/103-ignore-overly-long-macro-in-gen.h.dpatch @@ -0,0 +1,24 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 103-ignore-overly-long-macro-in-gen.h.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Comment out macro in cfortran/gen.h with too many arguments for cfortran +## DP: to accept. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/cfortran/gen.h /tmp/dpep.weQ8Dc/cernlib-2005.05.09/src/cfortran/gen.h +--- cernlib-2005.05.09~/src/cfortran/gen.h 2000-06-23 06:13:58.000000000 -0400 ++++ cernlib-2005.05.09/src/cfortran/gen.h 2005-06-09 11:43:16.729842789 -0400 +@@ -1123,10 +1123,10 @@ + + PROTOCCALLSFSUB3(NAMEZB,namezb,FLOAT,INT,INT) + #define NAMEZB(A1,A2,A3) CCALLSFSUB3(NAMEZB,namezb,FLOAT,INT,INT,A1,A2,A3) +- ++/* + PROTOCCALLSFSUB29(NEWPTQ,newptq,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,PDOUBLE,PDOUBLE,DOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PINT,PINT) + #define NEWPTQ(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,A18,A19,A20,A21,A22,A23,A24,A25,A26,A27,A28,A29) CCALLSFSUB29(NEWPTQ,newptq,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,PDOUBLE,PDOUBLE,DOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PDOUBLE,PINT,PINT,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11,A12,A13,A14,A15,A16,A17,A18,A19,A20,A21,A22,A23,A24,A25,A26,A27,A28,A29) +- ++*/ + PROTOCCALLSFSUB9(NEWRO,newro,INT,INT,INT,FLOAT,PFLOAT,FLOATV,FLOATV,FLOATV,FLOATV) + #define NEWRO(A1,A2,A3,A4,A5,A6,A7,A8,A9) CCALLSFSUB9(NEWRO,newro,INT,INT,INT,FLOAT,PFLOAT,FLOATV,FLOATV,FLOATV,FLOATV,A1,A2,A3,A4,A5,A6,A7,A8,A9) + --- cernlib-2006.dfsg.2.orig/debian/patches/122-fix-cdf-file-syntax-errors.dpatch +++ cernlib-2006.dfsg.2/debian/patches/122-fix-cdf-file-syntax-errors.dpatch @@ -0,0 +1,82 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 122-fix-cdf-file-syntax-errors.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix some lines in CDF file descriptions that were accidentally +## DP: commented out by virtue of beginning with a '*' character. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/packlib/cspack/programs/zftp/zftpcdf.cdf cernlib-2006.dfsg.2/src/packlib/cspack/programs/zftp/zftpcdf.cdf +--- cernlib-2006.dfsg.2~/src/packlib/cspack/programs/zftp/zftpcdf.cdf 1996-03-08 10:44:20.000000000 -0500 ++++ cernlib-2006.dfsg.2/src/packlib/cspack/programs/zftp/zftpcdf.cdf 2007-04-21 18:56:29.000000000 -0400 +@@ -388,8 +388,8 @@ + CHOPT 'CHOPT' C D=' ' + >Guidance + Transfer all files matching the specified remote file name +-to the local system. The file name given may contain +-*, to match one or more characters, or %, to match a single ++to the local system. The file name given may contain *, ++to match one or more characters, or %, to match a single + character. + . + By default the transfer is performed +@@ -397,9 +397,9 @@ + . + e.g. + . +-*.PAM --> GETP +-*.CETA, *.CET --> GETB, LRECL=3600 +-*.CMZ, *.RZ --> GETRZ ++ *.PAM --> GETP ++ *.CETA, *.CET --> GETB, LRECL=3600 ++ *.CMZ, *.RZ --> GETRZ + . + Options are passed to the appropriate transfer routine. + >Action MGET +@@ -413,17 +413,18 @@ + CHOPT 'CHOPT' C D=' ' + >Guidance + Transfer all files matching the specified local file name +-to the remote system. The file name given may contain +-*, to match one or more characters, or %, to match a single ++to the remote system. The file name given may contain *, ++to match one or more characters, or %, to match a single + character. ++. + By default the transfer is performed + using PUTA, unless the file name has a known extension. + . + e.g. + . +-*.PAM --> GETP +-*.CETA, *.CET --> GETB, LRECL=3600 +-*.CMZ, *.RZ --> GETRZ ++ *.PAM --> GETP ++ *.CETA, *.CET --> GETB, LRECL=3600 ++ *.CMZ, *.RZ --> GETRZ + . + e.g. + . +diff -urNad cernlib-2006.dfsg.2~/src/packlib/fatmen/programs/fmkuip/fmcdf.cdf cernlib-2006.dfsg.2/src/packlib/fatmen/programs/fmkuip/fmcdf.cdf +--- cernlib-2006.dfsg.2~/src/packlib/fatmen/programs/fmkuip/fmcdf.cdf 1997-01-07 06:20:31.000000000 -0500 ++++ cernlib-2006.dfsg.2/src/packlib/fatmen/programs/fmkuip/fmcdf.cdf 2007-04-21 18:58:52.000000000 -0400 +@@ -324,8 +324,8 @@ + >Command SEARCH + >Guidance + Use the SEARCH command to print the generic names of files which +-match the specified criteria. Character fields may include the +-* or % wild cards. ++match the specified criteria. Character fields may include the * ++or % wild cards. + . + e.g. SEARCH * VID=I* # search current working directory for entries + # with VID's beginning with I. +@@ -432,7 +432,7 @@ + If no wild-cards are present in the pathname, the characters /* + are automatically appended. To zoom down a tree starting with + . +-*ALLD, use ZOOM *ALLD/* ++ *ALLD, use ZOOM *ALLD/* + . + >MENU \FMDATA + >Guidance --- cernlib-2006.dfsg.2.orig/debian/patches/805-expunge-missing-mathlib-kernlib-symbols.dpatch +++ cernlib-2006.dfsg.2/debian/patches/805-expunge-missing-mathlib-kernlib-symbols.dpatch @@ -0,0 +1,92 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 805-expunge-missing-mathlib-kernlib-symbols.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Remove some unreferenced symbols from mathlib and kernlib and add +## DP: dummy symbols where needed. + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/mathlib/gen/d/Imakefile cernlib-2005.05.09.dfsg/src/mathlib/gen/d/Imakefile +--- cernlib-2005.05.09.dfsg~/src/mathlib/gen/d/Imakefile 2006-05-16 10:42:32.921420791 -0400 ++++ cernlib-2005.05.09.dfsg/src/mathlib/gen/d/Imakefile 2006-05-16 10:46:11.446026937 -0400 +@@ -2,7 +2,13 @@ + #include "pilot.h" + + /* rgmlt*.F have been moved into packlib/hbook to remove circular dependencies. ++ old506.F is removed since it is equivalent to obsolete code under ++ packlib/minuit. dummy.c contains dummy callback functions so the code ++ can function when built as a shared library. + --Kevin McCarty, for Debian. */ ++ ++SRCS_C= dummy.c ++ + SRCS_F= arithm.F c128.F c256.F c512.F c64.F cauchy64.F cft.F cfstft.F \ @@\ + rfstft.F cgauss.F d107d1.F d107r1.F d501l1.F d501l2.F d501n1.F \ @@\ + d501n2.F d501p1.F d501p2.F d501sf.F d700su.F d701bd.F \ @@\ +@@ -11,7 +17,7 @@ + epdchn.F epdcj.F epde1.F epdecc.F epdfix.F epdin.F \ @@\ + epditr.F epdje.F epdloc.F epdsrt.F epdtab.F errorf.F esolve.F \ @@\ + fcn1.F fftrc.F fumili.F gauss.F i128.F i32.F i64.F linsq.F \ @@\ +- mconv.F mft.F minfc.F minsq.F monito.F newro.F old506.F radapt.F \ @@\ ++ mconv.F mft.F minfc.F minsq.F monito.F newro.F radapt.F \ @@\ + radmul.F rca.F rfrdh164.F rfrdh264.F rft.F rgquad.F \ @@\ + rgs56p.F rgset.F riwiad.F riwibd.F rknys64.F rknysd.F rkstp.F \ @@\ + rpa.F rps.F rrkstp.F rsa.F rtriint.F s128.F s256.F s512.F \ @@\ +diff -urNad cernlib-2005.05.09.dfsg~/src/mathlib/gen/d/dummy.c cernlib-2005.05.09.dfsg/src/mathlib/gen/d/dummy.c +--- cernlib-2005.05.09.dfsg~/src/mathlib/gen/d/dummy.c 1969-12-31 19:00:00.000000000 -0500 ++++ cernlib-2005.05.09.dfsg/src/mathlib/gen/d/dummy.c 2006-05-16 11:36:09.331168663 -0400 +@@ -0,0 +1,54 @@ ++/* Dummy file to avoid undefined symbols in the library */ ++/* Kevin McCarty, 16 May 2006 */ ++ ++#include ++#include ++ ++/* Want the dummy functions to be weakly defined so they may be overridden ++ * without error. */ ++ ++#define kludge(x) #x ++#define stringify(x) kludge(x) ++#define underline(x) dummy_ ## x ++ ++#define DUMMY(UPPERNAME, fortranname_, returntype, exitcode, docs) \ ++static returntype underline(fortranname_)() \ ++ { print_dummy(#UPPERNAME, docs, exitcode); } \ ++void fortranname_() \ ++ __attribute__ ((weak, alias (stringify(underline(fortranname_))) )) ++ ++static void print_dummy(const char *function, const char * docs, int exitcode) ++{ ++ fprintf(stderr, "mathlib: Now in dummy %s routine.\n", function); ++ fprintf(stderr, ++ "If you see this message, you %s define your own such routine.\n", ++ exitcode ? "must" : "may wish to"); ++ if (docs) ++ fprintf(stderr, ++ "For details, the CERN writeup that can be found at\n" ++ "%s\n" ++ "may be helpful.\n", docs); ++ if (exitcode) ++ exit(exitcode); ++} ++ ++static char d151docs[] = "http://preprints.cern.ch/cgi-bin/setlink?base=preprint&categ=cern&id=IT-ASD-D151"; ++static char d300docs[] = "http://preprints.cern.ch/cgi-bin/setlink?base=preprint&categ=cern&id=IT-ASD-D300"; ++static char d510docs[] = "http://wwwasdoc.web.cern.ch/wwwasdoc/shortwrupsdir/d510/top.html"; ++ ++/* User-defined callback functions and subroutines */ ++ ++/* D151: DIVONNE: multidimensional integration */ ++DUMMY(DFUN, dfun_, double, EXIT_FAILURE, d151docs); ++ ++/* D300: elliptic partial differential equation callbacks */ ++DUMMY(GETCO, getco_, void, EXIT_FAILURE, d300docs); ++DUMMY(USER1, user1_, void, 0, d300docs); ++DUMMY(USER2, user2_, void, 0, d300docs); ++ ++/* D510: fitting likelihood functions (obsolete; use MINUIT instead!) */ ++DUMMY(FUNCT, funct_, double, EXIT_FAILURE, d510docs); ++ ++/* No docs for MINSQ / LINSQ? Not clear what CERN package they come from. */ ++DUMMY(FCN, fcn_, void, EXIT_FAILURE, 0); ++ --- cernlib-2006.dfsg.2.orig/debian/patches/202-fix-includes-in-minuit-example.dpatch +++ cernlib-2006.dfsg.2/debian/patches/202-fix-includes-in-minuit-example.dpatch @@ -0,0 +1,21 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 202-fix-includes-in-minuit-example.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: minuit-main example should have <> instead of "" around include files. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/cfortran/Examples/minuit-main.c /tmp/dpep.SuauEf/cernlib-2005.05.09/src/cfortran/Examples/minuit-main.c +--- cernlib-2005.05.09~/src/cfortran/Examples/minuit-main.c 2001-04-18 04:56:22.000000000 -0400 ++++ cernlib-2005.05.09/src/cfortran/Examples/minuit-main.c 2005-06-09 13:22:59.567224997 -0400 +@@ -15,8 +15,8 @@ + * Gunter Folger + */ + +-#include "cfortran.h" +-#include "minuit.h" ++#include ++#include + #define Ncont 20 + int main() + { --- cernlib-2006.dfsg.2.orig/debian/patches/801-non-optimized-rule-uses-fPIC-g.dpatch +++ cernlib-2006.dfsg.2/debian/patches/801-non-optimized-rule-uses-fPIC-g.dpatch @@ -0,0 +1,24 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 801-non-optimized-rule-uses-fPIC-g.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Ensure that special rules for creating non-optimized object files +## DP: use -fPIC for files that go into shared libs, and -g for all files. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/config/fortran.rules /tmp/dpep.gResDB/cernlib-2005.05.09/src/config/fortran.rules +--- cernlib-2005.05.09~/src/config/fortran.rules 1997-05-30 12:25:18.000000000 -0400 ++++ cernlib-2005.05.09/src/config/fortran.rules 2005-06-09 10:37:19.092244331 -0400 +@@ -345,9 +345,9 @@ + + #ifndef SpecialFortranLibObjectRule + #define SpecialFortranLibObjectRule(baseobj,basedep,options,cppoptions) @@\ +-SpecialFortranArchiveObjectRule(baseobj,basedep,options,cppoptions) @@\ +-SpecialFortranSharedObjectRule(baseobj,basedep,options,cppoptions) @@\ +-SpecialFortranDebugObjectRule(baseobj,basedep,options,cppoptions) ++SpecialFortranArchiveObjectRule(baseobj,basedep,options -g,cppoptions) @@\ ++SpecialFortranSharedObjectRule(baseobj,basedep,options -g -fPIC,cppoptions) @@\ ++SpecialFortranDebugObjectRule(baseobj,basedep,options -g,cppoptions) + #endif + + #ifndef SpecialFortranArchiveObjectRule --- cernlib-2006.dfsg.2.orig/debian/patches/102-dont-optimize-some-code.dpatch +++ cernlib-2006.dfsg.2/debian/patches/102-dont-optimize-some-code.dpatch @@ -0,0 +1,110 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 102-dont-optimize-some-code.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Don't allow the compiler to optimize several files that cause trouble +## DP: (either compiler crash or broken code generation). + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/c/Imakefile cernlib-2006.dfsg.2/src/mathlib/gen/c/Imakefile +--- cernlib-2006.dfsg.2~/src/mathlib/gen/c/Imakefile 1999-09-24 07:27:41.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/c/Imakefile 2008-02-22 12:06:26.000000000 -0800 +@@ -117,3 +117,8 @@ + SpecialFortranLibObjectRule(nzerfz64,nzerfz64,-O,NullParameter) + SpecialFortranLibObjectRule(wclbes,wclbes,-O,NullParameter) + #endif ++ ++#if defined(CERNLIB_GFORTRAN) && ! defined(CERNLIB_IBM) ++/* -O3 optimization causes minor floating point inaccuracies in gfortran 4.2 */ ++SpecialFortranLibObjectRule(gamma64,gamma64,-O0,NullParameter) ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/d/Imakefile cernlib-2006.dfsg.2/src/mathlib/gen/d/Imakefile +--- cernlib-2006.dfsg.2~/src/mathlib/gen/d/Imakefile 1996-06-12 08:25:38.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/d/Imakefile 2008-02-22 12:06:26.000000000 -0800 +@@ -19,6 +19,11 @@ + SRCS_F:= $(SRCS_F) cgauss64.F dgquad.F dgset.F gauss64.F minfc64.F \ @@\ + rcauch.F rdeqbs.F rdeqmr.F rderiv.F rfrdh1.F rgmlt.F rkstp64.F \ @@\ + simps64.F triint64.F ++#if defined(CERNLIB_LINUX) ++/* -O3 optimization breaks in g77 3.2 */ ++SpecialFortranLibObjectRule(rderiv,rderiv,-O0,NullParameter) ++SpecialFortranLibObjectRule(rfrdh1,rfrdh1,-O0,NullParameter) ++#endif + #else + SRCS_F:= $(SRCS_F) cgauss128.F cauchy.F cauchy128.F deqbs128.F deqmr128.F \ @@\ + deriv128.F minfc128.F rfrdh128.F rgmlt128.F rkstp128.F simps128.F \ @@\ +@@ -37,6 +42,16 @@ + IMAKE_DEFINES=-DFortranDoesCpp=NO + #endif + ++#if defined(CERNLIB_LINUX) ++/* -O3 optimization breaks in g77 3.2 */ ++SpecialFortranLibObjectRule(rknysd,rknysd,-O0,NullParameter) ++SpecialFortranLibObjectRule(old506,old506,-O0,NullParameter) ++ ++/* -O1 -fno-automatic optimization creates wrong code in g77 2.95, 3.3, 3.4 ++ due to x86 chip extended precision, cf. http://bugs.debian.org/290438 */ ++SpecialFortranLibObjectRule(radmul,radmul,-O0,NullParameter) ++#endif ++ + FORTRANSAVEOPTION = FortranSaveFlags + + SubdirLibraryTarget(NullParameter,NullParameter) +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/e/Imakefile cernlib-2006.dfsg.2/src/mathlib/gen/e/Imakefile +--- cernlib-2006.dfsg.2~/src/mathlib/gen/e/Imakefile 1996-05-01 06:21:54.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/e/Imakefile 2008-02-22 12:06:26.000000000 -0800 +@@ -12,6 +12,11 @@ + + #if defined(CERNLIB_DOUBLE) + SRCS_F:= $(SRCS_F) chsum.F dchebn.F rchecf.F rcspln.F ++#if defined(CERNLIB_LINUX) ++/* -O3 optimization breaks in g77 3.2 */ ++SpecialFortranLibObjectRule(rchecf,rchecf,-O0,NullParameter) ++SpecialFortranLibObjectRule(rcspln,rcspln,-O0,NullParameter) ++#endif + #else + SRCS_F:= $(SRCS_F) chsum128.F rchebn.F rcspln128.F + #endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/tcgen/Imakefile cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/tcgen/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/tcgen/Imakefile 1997-02-04 09:36:14.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/tcgen/Imakefile 2008-02-22 12:08:44.000000000 -0800 +@@ -63,4 +63,9 @@ + SRCS_F := $(SRCS_F) chtoi.F itoch.F + #endif + ++#if defined(CERNLIB_GFORTRAN) ++/* -O2 optimization causes miscompiled code in gfortran 4.3 on ia64 */ ++SpecialFortranLibObjectRule(tlsc,tlsc,-O0,NullParameter) ++#endif ++ + SubdirLibraryTarget(NullParameter,NullParameter) +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/c204fort/Imakefile cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/c204fort/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/c204fort/Imakefile 1996-06-10 03:20:57.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/c204fort/Imakefile 2008-02-22 12:06:26.000000000 -0800 +@@ -14,6 +14,11 @@ + FDEBUGFLAGS=+O1 + #endif + ++#if defined(CERNLIB_LINUX) ++/* -O3 optimization breaks in g77 3.2 */ ++SpecialFortranLibObjectRule(muller,muller,-O0,NullParameter) ++#endif ++ + FORTRANSAVEOPTION = FortranSaveFlags + + SubdirLibraryTarget(NullParameter,NullParameter) +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/g900fort/Imakefile cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/g900fort/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/g900fort/Imakefile 1996-06-12 03:04:36.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/g900fort/Imakefile 2008-02-22 12:06:26.000000000 -0800 +@@ -4,6 +4,11 @@ + FDEBUGFLAGS=NoOpFortranDebugFlags + #endif + ++#if defined(CERNLIB_LINUX) ++/* -O3 optimization breaks in g77 3.2 */ ++SpecialFortranLibObjectRule(ranget,ranget,-O0,NullParameter) ++#endif ++ + FORTRANSAVEOPTION=FortranSaveFlags + + SubdirLibraryTarget(NullParameter,NullParameter) --- cernlib-2006.dfsg.2.orig/debian/patches/703-move-code_motif-to-top-level.sh.dpatch +++ cernlib-2006.dfsg.2/debian/patches/703-move-code_motif-to-top-level.sh.dpatch @@ -0,0 +1,24 @@ +#!/bin/sh + +## DP: Script to move packlib/kuip/code_motif to top level, splitting it out +## DP: from packlib. But keep kmutil.c in packlib, it's otherwise used. + +set -e +cd src + +case "$1" in + -patch) + mv packlib/kuip/code_motif/kmutil.c packlib/kuip/code_kuip/ + mv packlib/kuip/code_motif ./ + cp -r packlib/kuip/kuip code_motif/ + ;; + + -unpatch) + rm -r code_motif/kuip + mv code_motif packlib/kuip/ + mv packlib/kuip/code_kuip/kmutil.c packlib/kuip/code_motif/ + ;; + + *) exit 1 ;; +esac + --- cernlib-2006.dfsg.2.orig/debian/patches/802-create-shared-libraries.dpatch +++ cernlib-2006.dfsg.2/debian/patches/802-create-shared-libraries.dpatch @@ -0,0 +1,97 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 802-create-shared-libraries.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Actually implement the rules to create shared libraries. + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/Imakefile cernlib-2005.05.09.dfsg/src/Imakefile +--- cernlib-2005.05.09.dfsg~/src/Imakefile 2005-12-01 15:19:24.191267776 +0000 ++++ cernlib-2005.05.09.dfsg/src/Imakefile 2005-12-01 15:20:10.310483251 +0000 +@@ -2,7 +2,7 @@ + #define PassCDebugFlags + + +-LIBDIRS= kernlib packlib code_motif graflib mathlib ++LIBDIRS= kernlib packlib mathlib graflib code_motif + + SUBDIRS= $(LIBDIRS) patchy cfortran + +@@ -15,6 +15,7 @@ + #endif + + InstallLibSubdirs($(LIBDIRS)) ++InstallSharedLibSubdirs($(LIBDIRS)) + + INCLUDEDIRS= $(LIBDIRS) cfortran + +diff -urNad cernlib-2005.05.09.dfsg~/src/code_motif/Imakefile cernlib-2005.05.09.dfsg/src/code_motif/Imakefile +--- cernlib-2005.05.09.dfsg~/src/code_motif/Imakefile 2005-12-01 15:19:24.062295137 +0000 ++++ cernlib-2005.05.09.dfsg/src/code_motif/Imakefile 2005-12-01 15:19:31.186783665 +0000 +@@ -31,3 +31,4 @@ + SubdirLibraryTarget(packlib-lesstif,NullParameter) + + InstallLibrary(packlib-lesstif,$(CERN_LIBDIR)) ++InstallSharedLibrary(packlib-lesstif,$(LIB_SONAME).$(CERN_LEVEL),$(CERN_SHLIBDIR)) +diff -urNad cernlib-2005.05.09.dfsg~/src/graflib/Imakefile cernlib-2005.05.09.dfsg/src/graflib/Imakefile +--- cernlib-2005.05.09.dfsg~/src/graflib/Imakefile 2001-12-11 15:06:28.000000000 +0000 ++++ cernlib-2005.05.09.dfsg/src/graflib/Imakefile 2005-12-01 15:19:31.186783665 +0000 +@@ -11,9 +11,12 @@ + + SubdirLibraryTarget(graflib,$(LIBDIRS)) + +-InstallLibrary(graflib,$(CERN_LIBDIR)) +- + InstallLibSubdirs(higz) ++InstallSharedLibSubdirs(higz) ++ ++/* these lines follow the above because graflib depends on grafX11 */ ++InstallLibrary(graflib,$(CERN_LIBDIR)) ++InstallSharedLibrary(graflib,$(LIB_SONAME).$(CERN_LEVEL),$(CERN_SHLIBDIR)) + + TestSubdirs(higz) + +diff -urNad cernlib-2005.05.09.dfsg~/src/graflib/higz/Imakefile cernlib-2005.05.09.dfsg/src/graflib/higz/Imakefile +--- cernlib-2005.05.09.dfsg~/src/graflib/higz/Imakefile 1997-09-02 13:34:47.000000000 +0000 ++++ cernlib-2005.05.09.dfsg/src/graflib/higz/Imakefile 2005-12-01 15:19:31.186783665 +0000 +@@ -13,6 +13,7 @@ + SubdirLibraryTarget(grafX11,$(LIBDIRS)) + + InstallLibrary(grafX11,$(CERN_LIBDIR)) ++InstallSharedLibrary(grafX11,$(LIB_SONAME).$(CERN_LEVEL),$(CERN_SHLIBDIR)) + + TestSubdirs(examples) + +diff -urNad cernlib-2005.05.09.dfsg~/src/kernlib/Imakefile cernlib-2005.05.09.dfsg/src/kernlib/Imakefile +--- cernlib-2005.05.09.dfsg~/src/kernlib/Imakefile 2002-04-26 14:37:20.000000000 +0000 ++++ cernlib-2005.05.09.dfsg/src/kernlib/Imakefile 2005-12-01 15:19:31.187783453 +0000 +@@ -14,6 +14,7 @@ + + InstallLibrary(kernlib,$(CERN_LIBDIR)) + InstallLibraryAlias(kernlib,kernlib-shift,$(CERN_LIBDIR)) ++InstallSharedLibrary(kernlib,$(LIB_SONAME).$(CERN_LEVEL),$(CERN_SHLIBDIR)) + + test:: LibraryTargetName(kernlib) + +diff -urNad cernlib-2005.05.09.dfsg~/src/mathlib/Imakefile cernlib-2005.05.09.dfsg/src/mathlib/Imakefile +--- cernlib-2005.05.09.dfsg~/src/mathlib/Imakefile 2005-12-01 15:19:24.005307227 +0000 ++++ cernlib-2005.05.09.dfsg/src/mathlib/Imakefile 2005-12-01 15:19:31.187783453 +0000 +@@ -19,6 +19,7 @@ + SubdirLibraryTarget(mathlib,$(LIBDIRS)) + + InstallLibrary(mathlib,$(CERN_LIBDIR)) ++InstallSharedLibrary(mathlib,$(LIB_SONAME).$(CERN_LEVEL),$(CERN_SHLIBDIR)) + + InstallIncludeSubdirs($(LIBDIRS)) + +diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/Imakefile cernlib-2005.05.09.dfsg/src/packlib/Imakefile +--- cernlib-2005.05.09.dfsg~/src/packlib/Imakefile 2005-12-01 15:19:23.885332680 +0000 ++++ cernlib-2005.05.09.dfsg/src/packlib/Imakefile 2005-12-01 15:19:31.188783241 +0000 +@@ -14,6 +14,7 @@ + + InstallLibrary(packlib,$(CERN_LIBDIR)) + InstallLibraryAlias(packlib,packlib-shift,$(CERN_LIBDIR)) ++InstallSharedLibrary(packlib,$(LIB_SONAME).$(CERN_LEVEL),$(CERN_SHLIBDIR)) + + TestSubdirs($(LIBDIRS)) + --- cernlib-2006.dfsg.2.orig/debian/patches/124-integrate-patchy-bootstrap.dpatch +++ cernlib-2006.dfsg.2/debian/patches/124-integrate-patchy-bootstrap.dpatch @@ -0,0 +1,67 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 124-integrate-patchy-bootstrap.dpatch by Kevin B. McCarty +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Write a stub Imakefile for the "p5boot" directory so it can easily +## DP: be integrated into the build. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/Imakefile cernlib-2006.dfsg.2/src/Imakefile +--- cernlib-2006.dfsg.2~/src/Imakefile 2008-02-26 14:39:40.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/Imakefile 2008-02-26 14:41:31.000000000 -0800 +@@ -7,7 +7,7 @@ + SUBDIRS= $(LIBDIRS) patchy cfortran + + #ifdef CERNLIB_UNIX +-SUBDIRS:= $(SUBDIRS) scripts mgr ++SUBDIRS:= $(SUBDIRS) p5boot scripts mgr + #endif + + InstallLibSubdirs($(LIBDIRS)) +diff -urNad cernlib-2006.dfsg.2~/src/p5boot/Imakefile cernlib-2006.dfsg.2/src/p5boot/Imakefile +--- cernlib-2006.dfsg.2~/src/p5boot/Imakefile 1969-12-31 16:00:00.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/p5boot/Imakefile 2008-02-26 14:39:46.000000000 -0800 +@@ -0,0 +1,7 @@ ++install.bin: $(CERN_ROOT)/bin/ypatchy ++ ++$(CERN_ROOT)/bin/ypatchy: $(CVSCOSRC)/p5boot/p5boot.sh ++ chmod a+x $< ++ FCOMP="$(FC) $(FCFLAGS)" $< ++ ++.PHONY: install.bin +diff -urNad cernlib-2006.dfsg.2~/src/p5boot/p5boot.sh cernlib-2006.dfsg.2/src/p5boot/p5boot.sh +--- cernlib-2006.dfsg.2~/src/p5boot/p5boot.sh 2006-12-07 06:17:53.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/p5boot/p5boot.sh 2008-02-26 14:39:46.000000000 -0800 +@@ -1,20 +1,22 @@ +-#!/bin/sh ++#!/bin/sh -e + +-mkdir -p $CERN_ROOT/build/p5boot +-cd $CERN_ROOT/build/p5boot +-cp -p -r $CERN_ROOT/src/p5boot/* . ++mkdir -p "$CERN_ROOT"/build/p5boot ++cd "$CERN_ROOT"/build/p5boot ++cp -p -r -f "$CERN_ROOT"/src/p5boot/* . + + AR="ar cr" + +-cd $CERN_ROOT/build/p5boot/p5lib ++cd "$CERN_ROOT"/build/p5boot/p5lib + $FCOMP -c *.f ++# This file contains a "main" program which we don't want in the library: ++rm -f nsynopt.o + $AR ../p5lib.a *.o + +-cd $CERN_ROOT/build/p5boot ++cd "$CERN_ROOT"/build/p5boot + +-$FCOMP -o nypatchy nypatchy.f p5lib.a $CERN_ROOT/lib/libkernlib.a ++$FCOMP -o nypatchy nypatchy.f p5lib.a "$CERN_ROOT"/lib/libkernlib.a + +-cd $CERN_ROOT/bin +-ln -s $CERN_ROOT/build/p5boot/nypatchy ypatchy ++cd "$CERN_ROOT"/bin ++ln -s "$CERN_ROOT"/build/p5boot/nypatchy ypatchy + +-cd $CERN_ROOT/build ++cd "$CERN_ROOT"/build --- cernlib-2006.dfsg.2.orig/debian/patches/307-use-canonical-cfortran.dpatch +++ cernlib-2006.dfsg.2/debian/patches/307-use-canonical-cfortran.dpatch @@ -0,0 +1,503 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 307-use-canonical-cfortran.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Use the most recent version of cfortran.h and cfortran.doc from +## DP: Debian package of cfortran, version 4.4-13. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/cfortran/cfortran.doc cernlib-2006.dfsg.2/src/cfortran/cfortran.doc +--- cernlib-2006.dfsg.2~/src/cfortran/cfortran.doc 1998-12-11 18:17:09.000000000 +0100 ++++ cernlib-2006.dfsg.2/src/cfortran/cfortran.doc 2009-03-13 04:43:32.000000000 +0100 +@@ -195,13 +195,13 @@ + HP9000> f77 -c cfortex.f + HP9000> CC -o cfortest cfortest.c cfortex.o -lI77 -lF77 && cfortest + +-HP0000> # If old-style f77 +800 compiled objects are required: ++HP9000> # If old-style f77 +800 compiled objects are required: + HP9000> # #define hpuxFortran800 + HP9000> cc -c -Aa -DhpuxFortran800 cfortest.c + HP9000> f77 +800 -o cfortest cfortest.o cfortex.f + + f2c> # In the following, 'CC' is any C compiler. +-f2c> f2c -R cfortex.f ++f2c> f2c cfortex.f + f2c> CC -o cfortest -Df2cFortran cfortest.c cfortex.c -lf2c && cfortest + + Portland Group $ # Presumably other C compilers also work. +@@ -533,9 +533,10 @@ + FORTRAN_REAL thus corresponds to FORTRAN's REAL on all machines, including t3e. + + +-o f2c +- f2c, by default promotes REAL functions to double. cfortran.h does not (yet) +-support this, so the f2c -R option must be used to turn this promotion off. ++o f2c / g77 ++ f2c and g77 by default promote REAL functions to double. As of December 9, ++2005, the Debian package of cfortran supports this behavior, so the f2c -R ++option must *NOT* be used to turn this promotion off. + + o f2c + [Thanks to Dario Autiero for pointing out the following.] +@@ -573,6 +574,11 @@ + #endif + /* Last three lines are a work-around for the strange f2c naming feature. */ + ++o gfortran ++ gfortran behaves similarly to f2c and g77, EXCEPT that it does NOT by default ++promote REAL functions to double. Therefore you should use -DgFortran instead ++of -Dg77Fortran or -Df2cFortran to let cfortran.h know about this difference. ++ + o NAG f90 + The Fortran 77 subset of Fortran 90 is supported. Extending cfortran.h to + interface C with all of Fortran 90 has not yet been examined. +@@ -643,7 +649,7 @@ + [For an ancient math.h on a 386 or sparc, get similar from a new math.h.] + #ifdef mc68000 /* 5 lines Copyright (c) 1988 by Sun Microsystems, Inc. */ + #define FLOATFUNCTIONTYPE int +- #define RETURNFLOAT(x) return (*(int *)(&(x))) ++ #define RETURNFLOAT(x) return (*(int *)(&(x))) + #define ASSIGNFLOAT(x,y) *(int *)(&x) = y + #endif + +@@ -874,7 +880,7 @@ + works everywhere and would seem to be an obvious choice. + + +-3. ++3. + + cfortran.h encourages the exact specification of the type and dimension of + array parameters because it allows the C compiler to detect errors in the +@@ -1835,7 +1841,7 @@ + + Unlike all other C compilers supported by cfortran.h, + 'gcc -traditional' promotes to double all functions returning float +-as demonstrated bu the following example. ++as demonstrated by the following example. + + /* m.c */ + #include +@@ -2017,8 +2023,9 @@ + + THIS PACKAGE, I.E. CFORTRAN.H, THIS DOCUMENT, AND THE CFORTRAN.H EXAMPLE + PROGRAMS ARE PROPERTY OF THE AUTHOR WHO RESERVES ALL RIGHTS. THIS PACKAGE AND +-THE CODE IT PRODUCES MAY BE FREELY DISTRIBUTED WITHOUT FEES, SUBJECT TO THE +-FOLLOWING RESTRICTIONS: ++THE CODE IT PRODUCES MAY BE FREELY DISTRIBUTED WITHOUT FEES, SUBJECT ++(AT YOUR CHOICE) EITHER TO THE GNU LIBRARY GENERAL PUBLIC LICENSE ++AT http://www.gnu.org/licenses/lgpl.html OR TO THE FOLLOWING RESTRICTIONS: + - YOU MUST ACCOMPANY ANY COPIES OR DISTRIBUTION WITH THIS (UNALTERED) NOTICE. + - YOU MAY NOT RECEIVE MONEY FOR THE DISTRIBUTION OR FOR ITS MEDIA + (E.G. TAPE, DISK, COMPUTER, PAPER.) +diff -urNad cernlib-2006.dfsg.2~/src/cfortran/cfortran.h cernlib-2006.dfsg.2/src/cfortran/cfortran.h +--- cernlib-2006.dfsg.2~/src/cfortran/cfortran.h 2002-09-11 19:05:51.000000000 +0200 ++++ cernlib-2006.dfsg.2/src/cfortran/cfortran.h 2009-03-13 04:44:17.000000000 +0100 +@@ -1,4 +1,4 @@ +-/* cfortran.h 4.4_cernlib2002 */ ++/* cfortran.h 4.4 */ + /* http://www-zeus.desy.de/~burow/cfortran/ */ + /* Burkhard Burow burow@desy.de 1990 - 2002. */ + +@@ -11,11 +11,78 @@ + MODIFYING, COPYING AND DISTRIBUTING THE CFORTRAN.H PACKAGE. + */ + ++/* The following modifications were made by the authors of CFITSIO or by me. ++ * They are flagged below with CFITSIO, the author's initials, or KMCCARTY. ++ * PDW = Peter Wilson ++ * DM = Doug Mink ++ * LEB = Lee E Brotzman ++ * MR = Martin Reinecke ++ * WDP = William D Pence ++ * -- Kevin McCarty, for Debian (19 Dec. 2005) */ ++ ++/******* ++ Modifications: ++ Oct 1997: Changed symbol name extname to appendus (PDW/HSTX) ++ (Conflicted with a common variable name in FTOOLS) ++ Nov 1997: If g77Fortran defined, also define f2cFortran (PDW/HSTX) ++ Feb 1998: Let VMS see the NUM_ELEMS code. Lets programs treat ++ single strings as vectors with single elements ++ Nov 1999: If macintoxh defined, also define f2cfortran (for Mac OS-X) ++ Apr 2000: If WIN32 defined, also define PowerStationFortran and ++ VISUAL_CPLUSPLUS (Visual C++) ++ Jun 2000: If __GNUC__ and linux defined, also define f2cFortran ++ (linux/gcc environment detection) ++ Apr 2002: If __CYGWIN__ is defined, also define f2cFortran ++ Nov 2002: If __APPLE__ defined, also define f2cfortran (for Mac OS-X) ++ ++ Nov 2003: If __INTEL_COMPILER or INTEL_COMPILER defined, also define ++ f2cFortran (KMCCARTY) ++ Dec 2005: If f2cFortran is defined, enforce REAL functions in FORTRAN ++ returning "double" in C. This was one of the items on ++ Burkhard's TODO list. (KMCCARTY) ++ Dec 2005: Modifications to support 8-byte integers. (MR) ++ USE AT YOUR OWN RISK! ++ Feb 2006 Added logic to typedef the symbol 'LONGLONG' to an appropriate ++ intrinsic 8-byte integer datatype (WDP) ++ Apr 2006: Modifications to support gfortran (and g77 with -fno-f2c flag) ++ since by default it returns "float" for FORTRAN REAL function. ++ (KMCCARTY) ++ May 2008: Revert commenting out of "extern" in COMMON_BLOCK_DEF macro. ++ Add braces around do-nothing ";" in 3 empty while blocks to ++ get rid of compiler warnings. Thanks to ROOT developers ++ Jacek Holeczek and Rene Brun for these suggestions. (KMCCARTY) ++ Aug 2008: If __GNUC__ is defined and no FORTRAN compiler is specified ++ via a #define or -D, default to gfortran behavior rather than ++ g77 behavior. (KMCCARTY) ++ *******/ ++ + /* + Avoid symbols already used by compilers and system *.h: + __ - OSF1 zukal06 V3.0 347 alpha, cc -c -std1 cfortest.c + +- */ ++*/ ++ ++/* ++ Determine what 8-byte integer data type is available. ++ 'long long' is now supported by most compilers, but older ++ MS Visual C++ compilers before V7.0 use '__int64' instead. (WDP) ++*/ ++ ++#ifndef LONGLONG_TYPE /* this may have been previously defined */ ++#if defined(_MSC_VER) /* Microsoft Visual C++ */ ++ ++#if (_MSC_VER < 1300) /* versions earlier than V7.0 do not have 'long long' */ ++ typedef __int64 LONGLONG; ++#else /* newer versions do support 'long long' */ ++ typedef long long LONGLONG; ++#endif ++ ++#else ++ typedef long long LONGLONG; ++#endif ++ ++#define LONGLONG_TYPE ++#endif + + + /* First prepare for the C compiler. */ +@@ -75,7 +142,9 @@ + + /* Remainder of cfortran.h depends on the Fortran compiler. */ + +-#if defined(CLIPPERFortran) || defined(pgiFortran) ++/* 11/29/2003 (KMCCARTY): add *INTEL_COMPILER symbols here */ ++/* 04/05/2006 (KMCCARTY): add gFortran symbol here */ ++#if defined(CLIPPERFortran) || defined(pgiFortran) || defined(__INTEL_COMPILER) || defined(INTEL_COMPILER) || defined(gFortran) + #define f2cFortran + #endif + +@@ -90,6 +159,31 @@ + Support f2c or f77 with gcc, vcc with f2c. + f77 with vcc works, missing link magic for f77 I/O.*/ + #endif ++/* 04/13/00 DM (CFITSIO): Add these lines for NT */ ++/* with PowerStationFortran and and Visual C++ */ ++#if defined(WIN32) && !defined(__CYGWIN__) ++#define PowerStationFortran ++#define VISUAL_CPLUSPLUS ++#endif ++#if defined(g77Fortran) /* 11/03/97 PDW (CFITSIO) */ ++#define f2cFortran ++#endif ++#if defined(__CYGWIN__) /* 04/11/02 LEB (CFITSIO) */ ++#define f2cFortran ++#define gFortran /* 8/26/08 (KMCCARTY) */ ++#endif ++#if defined(__GNUC__) && defined(linux) /* 06/21/00 PDW (CFITSIO) */ ++#define f2cFortran ++#define gFortran /* 8/26/08 (KMCCARTY) */ ++#endif ++#if defined(macintosh) /* 11/1999 (CFITSIO) */ ++#define f2cFortran ++#define gFortran /* 8/26/08 (KMCCARTY) */ ++#endif ++#if defined(__APPLE__) /* 11/2002 (CFITSIO) */ ++#define f2cFortran ++#define gFortran /* 8/26/08 (KMCCARTY) */ ++#endif + #if defined(__hpux) /* 921107: Use __hpux instead of __hp9000s300 */ + #define hpuxFortran /* Should also allow hp9000s7/800 use.*/ + #endif +@@ -131,6 +225,7 @@ + #if !(defined(mipsFortran)||defined(DECFortran)||defined(vmsFortran)||defined(CONVEXFortran)||defined(PowerStationFortran)||defined(AbsoftUNIXFortran)||defined(AbsoftProFortran)||defined(SXFortran)) + /* If your compiler barfs on ' #error', replace # with the trigraph for # */ + #error "cfortran.h: Can't find your environment among:\ ++ - GNU gcc (gfortran) on Linux. \ + - MIPS cc and f77 2.0. (e.g. Silicon Graphics, DECstations, ...) \ + - IBM AIX XL C and FORTRAN Compiler/6000 Version 01.01.0000.0000 \ + - VAX VMS CC 3.1 and FORTRAN 5.4. \ +@@ -147,11 +242,14 @@ + - VAXUltrix: vcc,cc or gcc with f2c. gcc or cc with f77. \ + - f77 with vcc works; but missing link magic for f77 I/O. \ + - NO fort. None of gcc, cc or vcc generate required names.\ +- - f2c : Use #define f2cFortran, or cc -Df2cFortran \ ++ - f2c/g77: Use #define f2cFortran, or cc -Df2cFortran \ ++ - gfortran: Use #define gFortran, or cc -DgFortran \ ++ (also necessary for g77 with -fno-f2c option) \ + - NAG f90: Use #define NAGf90Fortran, or cc -DNAGf90Fortran \ + - Absoft UNIX F77: Use #define AbsoftUNIXFortran or cc -DAbsoftUNIXFortran \ + - Absoft Pro Fortran: Use #define AbsoftProFortran \ +- - Portland Group Fortran: Use #define pgiFortran" ++ - Portland Group Fortran: Use #define pgiFortran \ ++ - Intel Fortran: Use #define INTEL_COMPILER" + /* Compiler must throw us out at this point! */ + #endif + #endif +@@ -164,7 +262,8 @@ + + /* Throughout cfortran.h we use: UN = Uppercase Name. LN = Lowercase Name. */ + +-#if defined(f2cFortran) || defined(NAGf90Fortran) || defined(DECFortran) || defined(mipsFortran) || defined(apolloFortran) || defined(sunFortran) || defined(CONVEXFortran) || defined(SXFortran) || defined(extname) ++/* "extname" changed to "appendus" below (CFITSIO) */ ++#if defined(f2cFortran) || defined(NAGf90Fortran) || defined(DECFortran) || defined(mipsFortran) || defined(apolloFortran) || defined(sunFortran) || defined(CONVEXFortran) || defined(SXFortran) || defined(appendus) + #define CFC_(UN,LN) _(LN,_) /* Lowercase FORTRAN symbols. */ + #define orig_fcallsc(UN,LN) CFC_(UN,LN) + #else +@@ -268,7 +367,7 @@ + #endif + + #ifndef apolloFortran +-#define COMMON_BLOCK_DEF(DEFINITION, NAME) DEFINITION NAME ++#define COMMON_BLOCK_DEF(DEFINITION, NAME) extern DEFINITION NAME + #define CF_NULL_PROTO + #else /* HP doesn't understand #elif. */ + /* Without ANSI prototyping, Apollo promotes float functions to double. */ +@@ -453,7 +552,7 @@ + {char *e; + e = s + strlen(s); + if (e>s) { /* Need this to handle NULL string.*/ +- while (e>s && *--e==t); /* Don't follow t's past beginning. */ ++ while (e>s && *--e==t) {;} /* Don't follow t's past beginning. */ + e[*e==t?0:1] = '\0'; /* Handle s[0]=t correctly. */ + } return s; } + +@@ -469,7 +568,7 @@ + { + if (e==s) *e = '\0'; /* Kill the string makes sense here.*/ + else if (e>s) { /* Watch out for neg. length string.*/ +- while (e>s && *--e==t); /* Don't follow t's past beginning. */ ++ while (e>s && *--e==t){;} /* Don't follow t's past beginning. */ + e[*e==t?0:1] = '\0'; /* Handle s[0]=t correctly. */ + } return s; } + +@@ -512,7 +611,7 @@ + *( (F).dsc$l_m[0]=(F).dsc$bounds[0].dsc$l_u=(ELEMNO) ), \ + (F).dsc$a_a0 = ( (F).dsc$a_pointer=(C) ) - (F).dsc$w_length ,(F)) + +-#else ++#endif /* PDW: 2/10/98 (CFITSIO) -- Let VMS see NUM_ELEMS definitions */ + #define _NUM_ELEMS -1 + #define _NUM_ELEM_ARG -2 + #define NUM_ELEMS(A) A,_NUM_ELEMS +@@ -534,13 +633,18 @@ + return term_char; + if (num_term <=0) num_term = (int)elem_len; + for (num=0; ; num++) { +- for (i=0; i<(unsigned)num_term && *strv==term_char; i++,strv++); ++ for (i=0; i<(unsigned)num_term && *strv==term_char; i++,strv++){;} + if (i==(unsigned)num_term) break; + else strv += elem_len-i; + } ++if (0) { /* to prevent not used warnings in gcc (added by ROOT) */ ++ c2fstrv(0, 0, 0, 0); f2cstrv(0, 0, 0, 0); kill_trailing(0, 0); ++ vkill_trailing(0, 0, 0, 0); num_elem(0, 0, 0, 0); ++} + return (int)num; + } +-#endif ++/* #endif removed 2/10/98 (CFITSIO) */ ++ + /*-------------------------------------------------------------------------*/ + + /* UTILITIES FOR C TO USE STRINGS IN FORTRAN COMMON BLOCKS */ +@@ -1318,6 +1422,7 @@ + #define INTVVVVVVV_cfTYPE int + #define LOGICALVVVVVVV_cfTYPE int + #define LONGVVVVVVV_cfTYPE long ++#define LONGLONGVVVVVVV_cfTYPE LONGLONG /* added by MR December 2005 */ + #define SHORTVVVVVVV_cfTYPE short + #define PBYTE_cfTYPE INTEGER_BYTE + #define PDOUBLE_cfTYPE DOUBLE_PRECISION +@@ -1325,6 +1430,7 @@ + #define PINT_cfTYPE int + #define PLOGICAL_cfTYPE int + #define PLONG_cfTYPE long ++#define PLONGLONG_cfTYPE LONGLONG /* added by MR December 2005 */ + #define PSHORT_cfTYPE short + + #define CFARGS0(A,T,V,W,X,Y,Z) _3(T,_cf,A) +@@ -1342,6 +1448,7 @@ + #define INT_cfINT(N,A,B,X,Y,Z) DOUBLE_cfINT(N,A,B,X,Y,Z) + #define LOGICAL_cfINT(N,A,B,X,Y,Z) DOUBLE_cfINT(N,A,B,X,Y,Z) + #define LONG_cfINT(N,A,B,X,Y,Z) DOUBLE_cfINT(N,A,B,X,Y,Z) ++#define LONGLONG_cfINT(N,A,B,X,Y,Z) DOUBLE_cfINT(N,A,B,X,Y,Z) /* added by MR December 2005 */ + #define SHORT_cfINT(N,A,B,X,Y,Z) DOUBLE_cfINT(N,A,B,X,Y,Z) + #define PBYTE_cfINT(N,A,B,X,Y,Z) PDOUBLE_cfINT(N,A,B,X,Y,Z) + #define PDOUBLE_cfINT(N,A,B,X,Y,Z) _(CFARGS,N)(A,PINT,B,X,Y,Z,0) +@@ -1349,6 +1456,7 @@ + #define PINT_cfINT(N,A,B,X,Y,Z) PDOUBLE_cfINT(N,A,B,X,Y,Z) + #define PLOGICAL_cfINT(N,A,B,X,Y,Z) PDOUBLE_cfINT(N,A,B,X,Y,Z) + #define PLONG_cfINT(N,A,B,X,Y,Z) PDOUBLE_cfINT(N,A,B,X,Y,Z) ++#define PLONGLONG_cfINT(N,A,B,X,Y,Z) PDOUBLE_cfINT(N,A,B,X,Y,Z) /* added by MR December 2005 */ + #define PSHORT_cfINT(N,A,B,X,Y,Z) PDOUBLE_cfINT(N,A,B,X,Y,Z) + #define BYTEV_cfINT(N,A,B,X,Y,Z) DOUBLEV_cfINT(N,A,B,X,Y,Z) + #define BYTEVV_cfINT(N,A,B,X,Y,Z) DOUBLEVV_cfINT(N,A,B,X,Y,Z) +@@ -1392,6 +1500,13 @@ + #define LONGVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z) + #define LONGVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z) + #define LONGVVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z) ++#define LONGLONGV_cfINT(N,A,B,X,Y,Z) DOUBLEV_cfINT(N,A,B,X,Y,Z) /* added by MR December 2005 */ ++#define LONGLONGVV_cfINT(N,A,B,X,Y,Z) DOUBLEVV_cfINT(N,A,B,X,Y,Z) /* added by MR December 2005 */ ++#define LONGLONGVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVV_cfINT(N,A,B,X,Y,Z) /* added by MR December 2005 */ ++#define LONGLONGVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVV_cfINT(N,A,B,X,Y,Z) /* added by MR December 2005 */ ++#define LONGLONGVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVV_cfINT(N,A,B,X,Y,Z) /* added by MR December 2005 */ ++#define LONGLONGVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVV_cfINT(N,A,B,X,Y,Z) /* added by MR December 2005 */ ++#define LONGLONGVVVVVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVVVVVV_cfINT(N,A,B,X,Y,Z) /* added by MR December 2005 */ + #define SHORTV_cfINT(N,A,B,X,Y,Z) DOUBLEV_cfINT(N,A,B,X,Y,Z) + #define SHORTVV_cfINT(N,A,B,X,Y,Z) DOUBLEVV_cfINT(N,A,B,X,Y,Z) + #define SHORTVVV_cfINT(N,A,B,X,Y,Z) DOUBLEVVV_cfINT(N,A,B,X,Y,Z) +@@ -1451,7 +1566,12 @@ + #define BYTE_cfPU(A) CFextern INTEGER_BYTE FCALLSC_QUALIFIER A + #define DOUBLE_cfPU(A) CFextern DOUBLE_PRECISION FCALLSC_QUALIFIER A + #if ! (defined(FLOATFUNCTIONTYPE)&&defined(ASSIGNFLOAT)&&defined(RETURNFLOAT)) ++#if defined (f2cFortran) && ! defined (gFortran) ++/* f2c/g77 return double from FORTRAN REAL functions. (KMCCARTY, 2005/12/09) */ ++#define FLOAT_cfPU(A) CFextern DOUBLE_PRECISION FCALLSC_QUALIFIER A ++#else + #define FLOAT_cfPU(A) CFextern FORTRAN_REAL FCALLSC_QUALIFIER A ++#endif + #else + #define FLOAT_cfPU(A) CFextern FLOATFUNCTIONTYPE FCALLSC_QUALIFIER A + #endif +@@ -1589,6 +1709,7 @@ + #define INT_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) + #define LOGICAL_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,LOGICAL,A,B,C,D,E) + #define LONG_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) ++#define LONGLONG_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) /* added by MR December 2005 */ + #define SHORT_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) + #define BYTEV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) + #define BYTEVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) +@@ -1632,6 +1753,13 @@ + #define LONGVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) + #define LONGVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) + #define LONGVVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) ++#define LONGLONGV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) /* added by MR December 2005 */ ++#define LONGLONGVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) /* added by MR December 2005 */ ++#define LONGLONGVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) /* added by MR December 2005 */ ++#define LONGLONGVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) /* added by MR December 2005 */ ++#define LONGLONGVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) /* added by MR December 2005 */ ++#define LONGLONGVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) /* added by MR December 2005 */ ++#define LONGLONGVVVVVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) /* added by MR December 2005 */ + #define SHORTV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) + #define SHORTVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) + #define SHORTVVV_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) +@@ -1645,6 +1773,7 @@ + #define PINT_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) + #define PLOGICAL_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,PLOGICAL,A,B,C,D,E) + #define PLONG_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) ++#define PLONGLONG_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) /* added by MR December 2005 */ + #define PSHORT_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,DEFAULT,A,B,C,D,E) + #define STRING_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,STRING,A,B,C,D,E) + #define PSTRING_cfSTR(N,T,A,B,C,D,E) _(CFARGS,N)(T,PSTRING,A,B,C,D,E) +@@ -1957,6 +2086,7 @@ + #define INT_cfT(M,I,A,B,D) *A + #define LOGICAL_cfT(M,I,A,B,D) F2CLOGICAL(*A) + #define LONG_cfT(M,I,A,B,D) *A ++#define LONGLONG_cfT(M,I,A,B,D) *A /* added by MR December 2005 */ + #define SHORT_cfT(M,I,A,B,D) *A + #define BYTEV_cfT(M,I,A,B,D) A + #define DOUBLEV_cfT(M,I,A,B,D) A +@@ -1964,6 +2094,7 @@ + #define INTV_cfT(M,I,A,B,D) A + #define LOGICALV_cfT(M,I,A,B,D) A + #define LONGV_cfT(M,I,A,B,D) A ++#define LONGLONGV_cfT(M,I,A,B,D) A /* added by MR December 2005 */ + #define SHORTV_cfT(M,I,A,B,D) A + #define BYTEVV_cfT(M,I,A,B,D) (void *)A /* We have to cast to void *,*/ + #define BYTEVVV_cfT(M,I,A,B,D) (void *)A /* since we don't know the */ +@@ -2001,6 +2132,12 @@ + #define LONGVVVVV_cfT(M,I,A,B,D) (void *)A + #define LONGVVVVVV_cfT(M,I,A,B,D) (void *)A + #define LONGVVVVVVV_cfT(M,I,A,B,D) (void *)A ++#define LONGLONGVV_cfT(M,I,A,B,D) (void *)A /* added by MR December 2005 */ ++#define LONGLONGVVV_cfT(M,I,A,B,D) (void *)A /* added by MR December 2005 */ ++#define LONGLONGVVVV_cfT(M,I,A,B,D) (void *)A /* added by MR December 2005 */ ++#define LONGLONGVVVVV_cfT(M,I,A,B,D) (void *)A /* added by MR December 2005 */ ++#define LONGLONGVVVVVV_cfT(M,I,A,B,D) (void *)A /* added by MR December 2005 */ ++#define LONGLONGVVVVVVV_cfT(M,I,A,B,D) (void *)A /* added by MR December 2005 */ + #define SHORTVV_cfT(M,I,A,B,D) (void *)A + #define SHORTVVV_cfT(M,I,A,B,D) (void *)A + #define SHORTVVVV_cfT(M,I,A,B,D) (void *)A +@@ -2013,6 +2150,7 @@ + #define PINT_cfT(M,I,A,B,D) A + #define PLOGICAL_cfT(M,I,A,B,D) ((*A=F2CLOGICAL(*A)),A) + #define PLONG_cfT(M,I,A,B,D) A ++#define PLONGLONG_cfT(M,I,A,B,D) A /* added by MR December 2005 */ + #define PSHORT_cfT(M,I,A,B,D) A + #define PVOID_cfT(M,I,A,B,D) A + #if defined(apolloFortran) || defined(hpuxFortran800) || defined(AbsoftUNIXFortran) +@@ -2083,12 +2221,18 @@ + #define INT_cfFZ(UN,LN) int FCALLSC_QUALIFIER fcallsc(UN,LN)( + #define LOGICAL_cfFZ(UN,LN) int FCALLSC_QUALIFIER fcallsc(UN,LN)( + #define LONG_cfFZ(UN,LN) long FCALLSC_QUALIFIER fcallsc(UN,LN)( ++#define LONGLONG_cfFZ(UN,LN) LONGLONG FCALLSC_QUALIFIER fcallsc(UN,LN)( /* added by MR December 2005 */ + #define SHORT_cfFZ(UN,LN) short FCALLSC_QUALIFIER fcallsc(UN,LN)( + #define VOID_cfFZ(UN,LN) void FCALLSC_QUALIFIER fcallsc(UN,LN)( + #ifndef __CF__KnR + /* The void is req'd by the Apollo, to make this an ANSI function declaration. + The Apollo promotes K&R float functions to double. */ +-#define FLOAT_cfFZ(UN,LN) FORTRAN_REAL FCALLSC_QUALIFIER fcallsc(UN,LN)(void ++#if defined (f2cFortran) && ! defined (gFortran) ++/* f2c/g77 return double from FORTRAN REAL functions. (KMCCARTY, 2005/12/09) */ ++#define FLOAT_cfFZ(UN,LN) DOUBLE_PRECISION FCALLSC_QUALIFIER fcallsc(UN,LN)(void ++#else ++#define FLOAT_cfFZ(UN,LN) FORTRAN_REAL FCALLSC_QUALIFIER fcallsc(UN,LN)(void ++#endif + #ifdef vmsFortran + #define STRING_cfFZ(UN,LN) void FCALLSC_QUALIFIER fcallsc(UN,LN)(fstring *AS + #else +@@ -2104,7 +2248,12 @@ + #endif + #else + #if ! (defined(FLOATFUNCTIONTYPE)&&defined(ASSIGNFLOAT)&&defined(RETURNFLOAT)) ++#if defined (f2cFortran) && ! defined (gFortran) ++/* f2c/g77 return double from FORTRAN REAL functions. (KMCCARTY, 2005/12/09) */ ++#define FLOAT_cfFZ(UN,LN) DOUBLE_PRECISION FCALLSC_QUALIFIER fcallsc(UN,LN)( ++#else + #define FLOAT_cfFZ(UN,LN) FORTRAN_REAL FCALLSC_QUALIFIER fcallsc(UN,LN)( ++#endif + #else + #define FLOAT_cfFZ(UN,LN) FLOATFUNCTIONTYPE FCALLSC_QUALIFIER fcallsc(UN,LN)( + #endif +@@ -2118,13 +2267,19 @@ + #define BYTE_cfF(UN,LN) BYTE_cfFZ(UN,LN) + #define DOUBLE_cfF(UN,LN) DOUBLE_cfFZ(UN,LN) + #ifndef __CF_KnR ++#if defined (f2cFortran) && ! defined (gFortran) ++/* f2c/g77 return double from FORTRAN REAL functions. (KMCCARTY, 2005/12/09) */ ++#define FLOAT_cfF(UN,LN) DOUBLE_PRECISION FCALLSC_QUALIFIER fcallsc(UN,LN)( ++#else + #define FLOAT_cfF(UN,LN) FORTRAN_REAL FCALLSC_QUALIFIER fcallsc(UN,LN)( ++#endif + #else + #define FLOAT_cfF(UN,LN) FLOAT_cfFZ(UN,LN) + #endif + #define INT_cfF(UN,LN) INT_cfFZ(UN,LN) + #define LOGICAL_cfF(UN,LN) LOGICAL_cfFZ(UN,LN) + #define LONG_cfF(UN,LN) LONG_cfFZ(UN,LN) ++#define LONGLONG_cfF(UN,LN) LONGLONG_cfFZ(UN,LN) /* added by MR December 2005 */ + #define SHORT_cfF(UN,LN) SHORT_cfFZ(UN,LN) + #define VOID_cfF(UN,LN) VOID_cfFZ(UN,LN) + #define STRING_cfF(UN,LN) STRING_cfFZ(UN,LN), +@@ -2187,6 +2342,7 @@ + #define LOGICAL_cfI return C2FLOGICAL(A0); + #endif + #define LONG_cfI return A0; ++#define LONGLONG_cfI return A0; /* added by MR December 2005 */ + #define SHORT_cfI return A0; + #define STRING_cfI return ; + #define VOID_cfI return ; --- cernlib-2006.dfsg.2.orig/debian/patches/112-remove-nonexistent-prototypes-from-gen.h.dpatch +++ cernlib-2006.dfsg.2/debian/patches/112-remove-nonexistent-prototypes-from-gen.h.dpatch @@ -0,0 +1,130 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 112-remove-nonexistent-prototypes-from-gen.h.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Remove prototypes from gen.h of functions that don't exist in mathlib. +## DP: Because of the way cfortran works, their existence otherwise causes +## DP: linking failures in third-party code. + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/cfortran/gen.h cernlib-2005.05.09.dfsg/src/cfortran/gen.h +--- cernlib-2005.05.09.dfsg~/src/cfortran/gen.h 2006-05-16 10:35:41.400252625 -0400 ++++ cernlib-2005.05.09.dfsg/src/cfortran/gen.h 2006-05-16 10:37:14.159452693 -0400 +@@ -84,10 +84,10 @@ + + PROTOCCALLSFFUN1(FLOAT,ALGAMA,algama,FLOAT) + #define ALGAMA(A2) CCALLSFFUN1(ALGAMA,algama,FLOAT,A2) +- ++/* + PROTOCCALLSFFUN1(FLOAT,QLGAMA,qlgama,FLOAT) + #define QLGAMA(A2) CCALLSFFUN1(QLGAMA,qlgama,FLOAT,A2) +- ++*/ + PROTOCCALLSFFUN1(DOUBLE,DLGAMA,dlgama,DOUBLE) + #define DLGAMA(A2) CCALLSFFUN1(DLGAMA,dlgama,DOUBLE,A2) + +@@ -141,10 +141,10 @@ + + PROTOCCALLSFFUN5(DOUBLE,DCAUCH,dcauch,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE) + #define DCAUCH(A2,A3,A4,A5,A6) CCALLSFFUN5(DCAUCH,dcauch,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,A2,A3,A4,A5,A6) +- ++/* + PROTOCCALLSFFUN6(DOUBLE,CHEBQU,chebqu,DOUBLE,DOUBLE,DOUBLE,PDOUBLE,INT,DOUBLE) + #define CHEBQU(A2,A3,A4,A5,A6,A7) CCALLSFFUN6(CHEBQU,chebqu,DOUBLE,DOUBLE,DOUBLE,PDOUBLE,INT,DOUBLE,A2,A3,A4,A5,A6,A7) +- ++*/ + PROTOCCALLSFFUN2(FLOAT,CHISIN,chisin,FLOAT,INT) + #define CHISIN(A2,A3) CCALLSFFUN2(CHISIN,chisin,FLOAT,INT,A2,A3) + +@@ -204,13 +204,13 @@ + + PROTOCCALLSFFUN3(DOUBLE,DVDOT,dvdot,INT,DOUBLEV,DOUBLEV) + #define DVDOT(A2,A3,A4) CCALLSFFUN3(DVDOT,dvdot,INT,DOUBLEV,DOUBLEV,A2,A3,A4) +- ++/* + PROTOCCALLSFFUN2(DOUBLE,E401BD,e401bd,DOUBLE,DOUBLE) + #define E401BD(A2,A3) CCALLSFFUN2(E401BD,e401bd,DOUBLE,DOUBLE,A2,A3) + + PROTOCCALLSFFUN2(FLOAT,ELIN1,elin1,FLOAT,FLOAT) + #define ELIN1(A2,A3) CCALLSFFUN2(ELIN1,elin1,FLOAT,FLOAT,A2,A3) +- ++*/ + PROTOCCALLSFFUN1(FLOAT,ERF,erf,FLOAT) + #define ERF(A2) CCALLSFFUN1(ERF,erf,FLOAT,A2) + +@@ -237,13 +237,13 @@ + + PROTOCCALLSFFUN2(FLOAT,FREARG,frearg,FLOAT,FLOAT) + #define FREARG(A2,A3) CCALLSFFUN2(FREARG,frearg,FLOAT,FLOAT,A2,A3) +- ++/* + PROTOCCALLSFFUN3(FLOAT,FRED2,fred2,FLOAT,FLOAT,FLOAT) + #define FRED2(A2,A3,A4) CCALLSFFUN3(FRED2,fred2,FLOAT,FLOAT,FLOAT,A2,A3,A4) + + PROTOCCALLSFFUN1(FLOAT,FRED3,fred3,FLOAT) + #define FRED3(A2) CCALLSFFUN1(FRED3,fred3,FLOAT,A2) +- ++*/ + PROTOCCALLSFFUN1(FLOAT,FREQ,freq,FLOAT) + #define FREQ(A2) CCALLSFFUN1(FREQ,freq,FLOAT,A2) + +@@ -270,10 +270,10 @@ + + PROTOCCALLSFFUN1(FLOAT,GAMMA,gamma,FLOAT) + #define GAMMA(A2) CCALLSFFUN1(GAMMA,gamma,FLOAT,A2) +- ++/* + PROTOCCALLSFFUN1(FLOAT,QGAMMA,qgamma,FLOAT) + #define QGAMMA(A2) CCALLSFFUN1(QGAMMA,qgamma,FLOAT,A2) +- ++*/ + PROTOCCALLSFFUN1(DOUBLE,DGAMMA,dgamma,DOUBLE) + #define DGAMMA(A2) CCALLSFFUN1(DGAMMA,dgamma,DOUBLE,A2) + +@@ -297,16 +297,16 @@ + + PROTOCCALLSFFUN4(FLOAT,GAUSS,gauss,ROUTINE,FLOAT,FLOAT,FLOAT) + #define GAUSS(A2,A3,A4,A5) CCALLSFFUN4(GAUSS,gauss,ROUTINE,FLOAT,FLOAT,FLOAT,A2,A3,A4,A5) +- ++/* + PROTOCCALLSFFUN4(FLOAT,QGAUSS,qgauss,ROUTINE,FLOAT,FLOAT,FLOAT) + #define QGAUSS(A2,A3,A4,A5) CCALLSFFUN4(QGAUSS,qgauss,ROUTINE,FLOAT,FLOAT,FLOAT,A2,A3,A4,A5) +- ++*/ + PROTOCCALLSFFUN4(DOUBLE,DGAUSS,dgauss,ROUTINE,DOUBLE,DOUBLE,DOUBLE) + #define DGAUSS(A2,A3,A4,A5) CCALLSFFUN4(DGAUSS,dgauss,ROUTINE,DOUBLE,DOUBLE,DOUBLE,A2,A3,A4,A5) +- ++/* + PROTOCCALLSFFUN6(DOUBLE,GPINDP,gpindp,DOUBLE,DOUBLE,DOUBLE,PDOUBLE,DOUBLE,INT) + #define GPINDP(A2,A3,A4,A5,A6,A7) CCALLSFFUN6(GPINDP,gpindp,DOUBLE,DOUBLE,DOUBLE,PDOUBLE,DOUBLE,INT,A2,A3,A4,A5,A6,A7) +- ++*/ + PROTOCCALLSFFUN2(INT,IGET,iget,INTV,INT) + #define IGET(A2,A3) CCALLSFFUN2(IGET,iget,INTV,INT,A2,A3) + +@@ -321,10 +321,10 @@ + + PROTOCCALLSFFUN3(INT,LKKSPL,lkkspl,DOUBLE,DOUBLEV,INT) + #define LKKSPL(A2,A3,A4) CCALLSFFUN3(LKKSPL,lkkspl,DOUBLE,DOUBLEV,INT,A2,A3,A4) +- ++/* + PROTOCCALLSFFUN4(INT,LOCHAR,lochar,INTV,INT,INTV,INT) + #define LOCHAR(A2,A3,A4,A5) CCALLSFFUN4(LOCHAR,lochar,INTV,INT,INTV,INT,A2,A3,A4,A5) +- ++*/ + PROTOCCALLSFFUN2(INT,MAXFZE,maxfze,FLOATV,INT) + #define MAXFZE(A2,A3) CCALLSFFUN2(MAXFZE,maxfze,FLOATV,INT,A2,A3) + +@@ -339,10 +339,10 @@ + + PROTOCCALLSFFUN2(INT,NDIGIT,ndigit,DOUBLE,DOUBLE) + #define NDIGIT(A2,A3) CCALLSFFUN2(NDIGIT,ndigit,DOUBLE,DOUBLE,A2,A3) +- ++/* + PROTOCCALLSFFUN1(INT,NEAR1,near1,FLOAT) + #define NEAR1(A2) CCALLSFFUN1(NEAR1,near1,FLOAT,A2) +- ++*/ + PROTOCCALLSFFUN1(INT,NIC311,nic311,FLOAT) + #define NIC311(A2) CCALLSFFUN1(NIC311,nic311,FLOAT,A2) + --- cernlib-2006.dfsg.2.orig/debian/patches/104-fix-undefined-insertchar-warning.dpatch +++ cernlib-2006.dfsg.2/debian/patches/104-fix-undefined-insertchar-warning.dpatch @@ -0,0 +1,28 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 104-fix-undefined-insertchar-warning.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Correct Lesstif warning about undefined InsertChar. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/packlib/kuip/programs/kxterm/kuipio.c /tmp/dpep.XJ5w0K/cernlib-2005.05.09/src/packlib/kuip/programs/kxterm/kuipio.c +--- cernlib-2005.05.09~/src/packlib/kuip/programs/kxterm/kuipio.c 1996-03-08 10:33:04.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/kuip/programs/kxterm/kuipio.c 2005-06-09 14:36:52.509109480 -0400 +@@ -573,7 +573,7 @@ + EditMenu, + RES_CONVERT( XmNlabelString, "Copy" ), + RES_CONVERT( XmNmnemonic, "C" ), +- XmNaccelerator, "CtrlInsertChar", ++ XmNaccelerator, "CtrlInsert", + RES_CONVERT( XmNacceleratorText, "Ctrl+Ins" ), + NULL ); + UxPutContext( copyButton, (char *) UxKuipIoContext ); +@@ -585,7 +585,7 @@ + EditMenu, + RES_CONVERT( XmNlabelString, "Paste" ), + RES_CONVERT( XmNmnemonic, "P" ), +- XmNaccelerator, "ShiftInsertChar", ++ XmNaccelerator, "ShiftInsert", + RES_CONVERT( XmNacceleratorText, "Shift+Ins" ), + NULL ); + UxPutContext( pasteButton, (char *) UxKuipIoContext ); --- cernlib-2006.dfsg.2.orig/debian/patches/107-define-strdup-macro-safely.dpatch +++ cernlib-2006.dfsg.2/debian/patches/107-define-strdup-macro-safely.dpatch @@ -0,0 +1,32 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 107-define-strdup-macro-safely.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: In some cases strdup() and strndup() are macros, causing a build +## DP: failure. Ensure any such macros are undefined before redeclaring them. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/packlib/kuip/kuip/kstring.h /tmp/dpep.ieQnkg/cernlib-2005.05.09/src/packlib/kuip/kuip/kstring.h +--- cernlib-2005.05.09~/src/packlib/kuip/kuip/kstring.h 1997-03-14 12:16:39.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/kuip/kuip/kstring.h 2005-06-09 14:58:22.446739916 -0400 +@@ -32,6 +32,9 @@ + + extern char* strrstr( const char* str1, const char* str2 ); + ++#ifdef strdup ++# undef strdup /* otherwise the next function declaration may bomb */ ++#endif + #define strdup Strdup /* prototype without const */ + extern char* strdup( const char* str ); + +@@ -46,6 +49,10 @@ + const char* str4 ); + extern char* str5dup( const char* str1, const char* str2, const char* str3, + const char* str4, const char* str5 ); ++ ++#ifdef strndup ++# undef strndup /* otherwise the next function declaration may bomb */ ++#endif + extern char* strndup( const char* buf, size_t n ); + extern char* stridup( int i ); + --- cernlib-2006.dfsg.2.orig/debian/patches/216-use-cernlib-gamma-not-intrinsic.dpatch +++ cernlib-2006.dfsg.2/debian/patches/216-use-cernlib-gamma-not-intrinsic.dpatch @@ -0,0 +1,178 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 216-use-cernlib-gamma-not-intrinsic.dpatch by Kevin B. McCarty +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Force use of mathlib gamma function in mathlib tests. +## DP: Built-in libc gamma function may not be sufficiently precise, +## DP: see, e.g., http://gcc.gnu.org/ml/fortran/2007-10/msg00096.html etc. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/c/algama.F cernlib-2006.dfsg.2/src/mathlib/gen/c/algama.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/c/algama.F 1996-04-01 07:01:54.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/c/algama.F 2008-01-29 10:02:41.000000000 -0800 +@@ -10,6 +10,7 @@ + #if (defined(CERNLIB_DOUBLE))&&(!defined(CERNLIB_IBM)) + FUNCTION ALGAMA(X) + DOUBLE PRECISION DLGAMA,D ++ EXTERNAL DLGAMA + + ENTRY ALOGAM(X) + +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/c/alogam.F cernlib-2006.dfsg.2/src/mathlib/gen/c/alogam.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/c/alogam.F 1996-04-01 07:01:54.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/c/alogam.F 2008-01-29 10:03:54.000000000 -0800 +@@ -9,6 +9,7 @@ + #include "gen/pilot.h" + #if (defined(CERNLIB_DOUBLE))&&(defined(CERNLIB_IBM)) + FUNCTION ALOGAM(X) ++ EXTERNAL ALGAMA + ALOGAM = ALGAMA(X) + END + #endif +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/c/bsja64.F cernlib-2006.dfsg.2/src/mathlib/gen/c/bsja64.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/c/bsja64.F 1996-04-01 07:02:08.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/c/bsja64.F 2008-01-29 10:00:11.000000000 -0800 +@@ -21,9 +21,11 @@ + #if defined(CERNLIB_DOUBLE) + PARAMETER (NAMEJ = 'BSJA/DBSJA', + 1 NAMEI = 'BSIA/DBSIA') ++ EXTERNAL DGAMMA + #endif + #if !defined(CERNLIB_DOUBLE) + PARAMETER (NAMEJ = 'BSJA', NAMEI = 'BSIA') ++ EXTERNAL GAMMA + #endif + LOGICAL LJA,LIA,LEV,LER + DIMENSION B(0:*),BA(0:100),RR(0:100) +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/c/cbsja64.F cernlib-2006.dfsg.2/src/mathlib/gen/c/cbsja64.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/c/cbsja64.F 1996-04-01 07:02:09.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/c/cbsja64.F 2008-01-29 10:00:11.000000000 -0800 +@@ -21,9 +21,11 @@ + CHARACTER NAME*(*) + #if defined(CERNLIB_DOUBLE) + PARAMETER (NAME = 'CBSJA/WBSJA') ++ EXTERNAL DGAMMA + #endif + #if !defined(CERNLIB_DOUBLE) + PARAMETER (NAME = 'CBSJA') ++ EXTERNAL GAMMA + #endif + LOGICAL LER + DIMENSION CB(0:*),CBA(0:100),RR(0:100) +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/c/dlogam.F cernlib-2006.dfsg.2/src/mathlib/gen/c/dlogam.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/c/dlogam.F 1996-04-01 07:01:55.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/c/dlogam.F 2008-01-29 10:04:25.000000000 -0800 +@@ -9,6 +9,7 @@ + #include "gen/pilot.h" + #if defined(CERNLIB_IBM) + FUNCTION DLOGAM(X) ++ EXTERNAL DLGAMA + #include "gen/imp64.inc" + DLOGAM = DLGAMA(X) + END +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/c/gagnc64.F cernlib-2006.dfsg.2/src/mathlib/gen/c/gagnc64.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/c/gagnc64.F 1996-04-01 07:02:05.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/c/gagnc64.F 2008-01-29 10:04:48.000000000 -0800 +@@ -25,9 +25,11 @@ + CHARACTER NAME*(*) + CHARACTER*80 ERRTXT + #if !defined(CERNLIB_DOUBLE) ++ EXTERNAL ALGAMA + PARAMETER (NAME = 'RGAGNC') + #endif + #if defined(CERNLIB_DOUBLE) ++ EXTERNAL DLGAMA + PARAMETER (NAME = 'RGAGNC/DGAGNC') + #endif + +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/c/gapnc64.F cernlib-2006.dfsg.2/src/mathlib/gen/c/gapnc64.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/c/gapnc64.F 1996-04-01 07:02:05.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/c/gapnc64.F 2008-01-29 10:03:35.000000000 -0800 +@@ -24,9 +24,11 @@ + CHARACTER NAME*(*) + CHARACTER*80 ERRTXT + #if !defined(CERNLIB_DOUBLE) ++ EXTERNAL ALGAMA + PARAMETER (NAME = 'RGAPNC') + #endif + #if defined(CERNLIB_DOUBLE) ++ EXTERNAL DLGAMA + PARAMETER (NAME = 'RGAPNC/DGAPNC') + #endif + PARAMETER (EPS = 5D-14) +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/c/rrizet64.F cernlib-2006.dfsg.2/src/mathlib/gen/c/rrizet64.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/c/rrizet64.F 1996-04-01 07:02:00.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/c/rrizet64.F 2008-01-29 10:00:11.000000000 -0800 +@@ -14,12 +14,14 @@ + C + CHARACTER*(*) NAME + PARAMETER(NAME='RRIZET/DRIZET') ++ EXTERNAL DGAMMA + #endif + #if !defined(CERNLIB_DOUBLE) + FUNCTION RRIZET(X) + C + CHARACTER*(*) NAME + PARAMETER(NAME='RRIZET') ++ EXTERNAL GAMMA + #endif + C + DIMENSION P1(0:8),P2(0:8),P3(0:9),P4(0:8) +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/g/gamdis.F cernlib-2006.dfsg.2/src/mathlib/gen/g/gamdis.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/g/gamdis.F 1996-04-01 07:02:43.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/g/gamdis.F 2008-01-29 10:00:11.000000000 -0800 +@@ -28,6 +28,8 @@ + PARAMETER (Z1 = 1, HALF = Z1/2, QUAR = Z1/4) + PARAMETER (C1 = 3*Z1/2, KMAX = 300) + ++ EXTERNAL GAMMA ++ + DATA C + 1/ 0.5772157,-0.6558781,-0.0420026, 0.1665386,-0.0421977, + 2 -0.0096220, 0.0072189,-0.0011652,-0.0002152, 0.0001281, +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/tests/c302m.F cernlib-2006.dfsg.2/src/mathlib/gen/tests/c302m.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/tests/c302m.F 1996-04-01 07:01:13.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/tests/c302m.F 2008-01-29 10:00:11.000000000 -0800 +@@ -36,6 +36,7 @@ + #include "gen/imp64.inc" + + REAL GAMMA ++ EXTERNAL GAMMA, DGAMMA + CHARACTER*6 TFUNC(2) + #include "iorc.inc" + C +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/tests/c310m.F cernlib-2006.dfsg.2/src/mathlib/gen/tests/c310m.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/tests/c310m.F 1996-04-01 07:01:14.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/tests/c310m.F 2008-01-29 10:02:19.000000000 -0800 +@@ -36,6 +36,7 @@ + + #include "imp64r.inc" + REAL ALGAMA ++ EXTERNAL ALGAMA + C Set maximum error allowed for test to be considered successful + DIMENSION TOL(2),TOLIBM(2) + +@@ -50,6 +51,7 @@ + #if defined(CERNLIB_DOUBLE) + DIMENSION Y(7),T(7) + REAL RT(7) ++ EXTERNAL DLGAMA + #endif + #if !defined(CERNLIB_DOUBLE) + REAL Y(7),T(7) +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/tests/e408m.F cernlib-2006.dfsg.2/src/mathlib/gen/tests/e408m.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/tests/e408m.F 1998-11-05 02:41:34.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/tests/e408m.F 2008-01-29 10:00:11.000000000 -0800 +@@ -44,6 +44,12 @@ + DATA TXT(2) /'EXP(-X**2) (-1 <= X <= 1) LUKE 3.2.2(8)'/ + DATA TXT(3) /'J_1(X) (-1 <= X <= 1) LUKE 9.7(7)'/ + ++#if defined(CERNLIB_DOUBLE) ++ EXTERNAL DGAMMA ++#else ++ EXTERNAL GAMMA ++#endif ++ + #if !defined(CERNLIB_WINNT) && !defined(CERNLIB_LINUX) + # if defined(CERNLIB_DOUBLE) + GVSUM(N,B,C) = DVSUM(N,B,C) --- cernlib-2006.dfsg.2.orig/debian/patches/00list +++ cernlib-2006.dfsg.2/debian/patches/00list @@ -0,0 +1,73 @@ +000-unpack.sh.dpatch +101-exclude-extra-modules-from-Imakefile.dpatch +102-dont-optimize-some-code.dpatch +103-ignore-overly-long-macro-in-gen.h.dpatch +104-fix-undefined-insertchar-warning.dpatch +105-fix-obsolete-xmfontlistcreate-warning.dpatch +106-fix-paw++-menus-in-lesstif.dpatch +107-define-strdup-macro-safely.dpatch +110-ignore-included-lapack-rule.dpatch +111-fix-kuesvr-install-location.dpatch +112-remove-nonexistent-prototypes-from-gen.h.dpatch +113-postscript-fix.dpatch +114-install-scripts-properly.dpatch +115-rsrtnt64-goto-outer-block.dpatch +116-fix-fconc64-spaghetti-code.dpatch +118-rename-mathlib-common-blocks.dpatch +119-fix-compiler-warnings.dpatch +120-fix-gets-usage-in-kuipc.dpatch +121-fix-mathlib-test-case-c209m.dpatch +122-fix-cdf-file-syntax-errors.dpatch +123-extern-memmove-only-if-not-macro.dpatch +124-integrate-patchy-bootstrap.dpatch +125-fix-PLINAME-creation.dpatch +126-fix-patchy-compile-flags.dpatch +127-yexpand-makes-tmpfiles-in-pwd.dpatch +201-update-kuip-helper-apps.dpatch +202-fix-includes-in-minuit-example.dpatch +205-max-path-length-to-256.dpatch +208-fix-redundant-packlib-dependencies.dpatch +209-ignore-unneeded-headers-in-kmutil.c.dpatch +210-improve-cfortran-header-files.dpatch +211-support-amd64-and-itanium.dpatch +211-support-digital-alpha.dpatch +212-print-test-results.dpatch +213-fix-test-suite-build.dpatch +214-fix-kernnum-funcs-on-64-bit.dpatch +216-use-cernlib-gamma-not-intrinsic.dpatch +217-abend-on-mathlib-test-failure.dpatch +300-skip-duplicate-lenocc.dpatch +302-scripts-comply-with-FHS.dpatch +303-shadow-passwords-supported.dpatch +304-update-Imake-config-files.dpatch +306-patch-assert.h-for-makedepend.dpatch +307-use-canonical-cfortran.dpatch +308-use-canonical-cfortran-location.dpatch +311-skip-duplicate-qnext.dpatch +313-comis-preserves-filename-case.dpatch +315-fixes-for-MacOSX.dpatch +318-additional-gcc-3.4-fixes.dpatch +319-work-around-imake-segfaults.dpatch +320-support-ifort.dpatch +321-support-gfortran.dpatch +600-use-host.def-config-file.dpatch +602-debianize-kuip-helper-apps.dpatch +603-trim-build-output.dpatch +604-put-pawserv-logs-in-own-directory.dpatch +605-move-kuesvr-to-usrlib.dpatch +700-move-kernlib-to-top-level.sh.dpatch +700-remove-kernlib-from-packlib-Imakefile.dpatch +701-patch-hbook-comis-Imakefiles.dpatch +702-fix-packlib-mathlib-circular-mess.sh.dpatch +702-patch-Imakefiles-for-packlib-mathlib.dpatch +703-move-code_motif-to-top-level.sh.dpatch +703-patch-code_motif-packlib-Imakefiles.dpatch +704-move-kuwhag.c-to-grafX11.sh.dpatch +704-patch-code_kuip-higzcc-Imakefiles.dpatch +800-implement-shared-library-rules-in-Imake.dpatch +801-non-optimized-rule-uses-fPIC-g.dpatch +802-create-shared-libraries.dpatch +803-link-binaries-dynamically.dpatch +805-expunge-missing-mathlib-kernlib-symbols.dpatch +806-bump-mathlib-and-dependents-sonames.dpatch +807-static-link-some-tests-on-64-bit.dpatch --- cernlib-2006.dfsg.2.orig/debian/patches/803-link-binaries-dynamically.dpatch +++ cernlib-2006.dfsg.2/debian/patches/803-link-binaries-dynamically.dpatch @@ -0,0 +1,76 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 803-link-binaries-dynamically.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Link binaries dynamically against CERN libraries. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/config/fortran.rules cernlib-2006.dfsg.2/src/config/fortran.rules +--- cernlib-2006.dfsg.2~/src/config/fortran.rules 2007-12-14 01:25:54.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/config/fortran.rules 2007-12-14 01:34:31.000000000 +0000 +@@ -189,7 +189,7 @@ + */ + #ifndef CernlibDependLibrary + #define CernlibDependLibrary(cernlibs)\ +-$(filter-out +%,$(filter-out -%,$(shell cernlib cernlibs))) ++$(filter-out +%,$(filter-out -%,$(shell cernlib -dy cernlibs))) + #endif + + /* Helper to use cernlib command +@@ -202,17 +202,22 @@ + * cernlib utility to find give all required libraries ( ie. no extra + * syslibs needed. + */ +-#ifndef CernlibFortranProgramTarget +-#define CernlibFortranProgramTarget(program,objects,deplibs,locallibs,cernlibs)\ ++#ifndef CernlibFortranStaticTarget ++#define CernlibFortranStaticTarget(program,objects,deplibs,locallibs,cernlibs)\ + ProgramTargetName(program): SetWin32ObjSuffix(objects) deplibs CernlibDependLibrary(cernlibs) @@\ + RemoveTargetProgram($@) @@\ + @echo "Linking with cern libraries" @@\ +- @cernlib cernlibs @@\ ++ @CernlibCmd(cernlibs) @@\ + CernlibFortranLinkRule($@,$(FCLDOPTIONS),objects,locallibs $(LDLIBS),CernlibCmd(cernlibs)) @@\ + @@\ + clean:: @@\ + RemoveFile(ProgramTargetName(program)) @@\ + ++#endif /*CernlibFortranStaticTarget */ ++ ++#ifndef CernlibFortranProgramTarget ++#define CernlibFortranProgramTarget(program,objects,deplibs,locallibs,cernlibs)\ ++CernlibFortranStaticTarget(program,objects,deplibs,locallibs,-dy cernlibs) + #endif /*CernlibFortranProgramTarget */ + + /* +@@ -233,8 +238,8 @@ + ProgramTargetName(program): objects deplibs CernlibDependLibrary(cernlibs) @@\ + RemoveTargetProgram($@) @@\ + @echo "Linking with cern libraries" @@\ +- @cernlib cernlibs @@\ +- CernlibLinkRule($@,$(LDOPTIONS),objects,locallibs $(LDLIBS),cernlib cernlibs) @@\ ++ @cernlib -dy cernlibs @@\ ++ CernlibLinkRule($@,$(LDOPTIONS),objects,locallibs $(LDLIBS),cernlib -dy cernlibs) @@\ + @@\ + clean:: @@\ + RemoveFile(ProgramTargetName(program)) @@\ +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/programs/kxterm/Imakefile cernlib-2006.dfsg.2/src/packlib/kuip/programs/kxterm/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/kuip/programs/kxterm/Imakefile 2007-12-14 01:25:53.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/programs/kxterm/Imakefile 2007-12-14 01:25:57.000000000 +0000 +@@ -13,14 +13,14 @@ + DefinePackageLibrary(kxtlib) + + #if defined(CERNLIB_UNIX) +-CLIBS= -G Motif kernlib ++CLIBS= -G Motif -u Xm + # if defined(CERNLIB_INTELIFC) + CLIBS= $(CLIBS) -nofor_main + # endif + #endif + + #if defined(CERNLIB_VAXVMS) +-CLIBS= graflib/motif packlib kernlib ++CLIBS= -G Motif Xm + #endif + + --- cernlib-2006.dfsg.2.orig/debian/patches/800-implement-shared-library-rules-in-Imake.dpatch +++ cernlib-2006.dfsg.2/debian/patches/800-implement-shared-library-rules-in-Imake.dpatch @@ -0,0 +1,164 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 800-implement-shared-library-rules-in-Imake.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Implement macros for shared libraries on Linux in the Imake cfg files. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/config/Imake.rules cernlib-2006.dfsg.2/src/config/Imake.rules +--- cernlib-2006.dfsg.2~/src/config/Imake.rules 2007-04-25 23:32:50.000000000 -0400 ++++ cernlib-2006.dfsg.2/src/config/Imake.rules 2007-04-25 23:32:52.000000000 -0400 +@@ -904,6 +904,8 @@ + * InstallSharedLibrary - generate rules to install the indicated sharable + * Library + */ ++/* Commented out because this appears to be overriding the definition ++ * in lnxLib.rules --Kevin McCarty, 16 May 2002 + #undef InstallSharedLibrary + #ifndef InstallSharedLibrary + #define InstallSharedLibrary(libname,rev,dest) @@\ +@@ -917,7 +919,8 @@ + $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) $< $@ @@\ + RemoveFile($<) @@\ + $(LN) $@ $< +-#endif /* InstallSharedLibrary */ ++#endif InstallSharedLibrary ++*/ + + /* + * InstallLinkKitLibrary - rule to install Link Kit library. +@@ -1967,6 +1970,15 @@ + #endif /* InstallSubdirs */ + + /* ++ * InstallSharedLibSubdirs - generate rules to recursively install shared ++ * libraries. Added by Kevin McCarty for Debian, 15 May 2002 ++ */ ++#ifndef InstallSharedLibSubdirs ++#define InstallSharedLibSubdirs(dirs) \ ++NamedTargetSubdirs(install.shlib,dirs,"installing",DESTDIR=$(DESTDIR),install.shlib) ++#endif /* InstallSharedLibSubdirs */ ++ ++/* + * InstallBinSubdirs - generate rules to recursively install programs and + * scripts + */ +@@ -2354,9 +2366,12 @@ + */ + #ifndef DefinePackageLibrary + #define DefinePackageLibrary(locallib) \ ++/* commented out since these will be .so files. -Kevin */ @@\ ++/* @@\ + ifeq ($(strip $(PACKAGE_LIB)),) @@\ + PACKAGE_LIB=$(TOP)$(PACKAGETOP)/LibraryTargetName($(PACKAGE_NAME)) @@\ + endif @@\ ++*/ @@\ + ifneq (locallib,) @@\ + override PACKAGE_LIB:= LibraryTargetName(locallib) $(PACKAGE_LIB) @@\ + @@\ +diff -urNad cernlib-2006.dfsg.2~/src/config/biglib.rules cernlib-2006.dfsg.2/src/config/biglib.rules +--- cernlib-2006.dfsg.2~/src/config/biglib.rules 2000-04-19 06:51:01.000000000 -0400 ++++ cernlib-2006.dfsg.2/src/config/biglib.rules 2007-04-25 23:33:16.000000000 -0400 +@@ -227,7 +227,7 @@ + RanLibrary($@) + #endif + +-#if defined(HPArchitecture) ++#if defined(HPArchitecture) && !defined(LinuxArchitecture) + + #ifndef SharedLibraryTargetName + #define SharedLibraryTargetName(name)Concat(lib,name.sl) +@@ -264,7 +264,7 @@ + @date + #endif + +-#elif defined(AlphaArchitecture) ++#elif defined(AlphaArchitecture) && !defined(LinuxArchitecture) + + #ifndef SharedLibraryTargetName + #define SharedLibraryTargetName(name)Concat(lib,name.so) +@@ -281,6 +281,45 @@ + @date + #endif + ++#elif defined(LinuxArchitecture) /* added by Kevin McCarty ++ for Debian, 15 May 2002 */ ++#ifndef SharedLibraryTargetName ++#define SharedLibraryTargetName(name)Concat(lib,name.so.$(LIB_SONAME)$(TOOL_NAME).$(CERN_LEVEL)) ++#endif ++ ++#ifndef SharedLibrarySonameName ++#define SharedLibrarySonameName(name)Concat(lib,name.so.$(LIB_SONAME)$(TOOL_SONAME)) ++#endif ++ ++#ifndef SharedLibraryBuild ++#define SharedLibraryBuild(libname,version) @@\ ++SharedLibraryTargetName(libname): version/objects.list @@\ ++ @echo rebuild version library $@ in $(CURRENT_DIR) @@\ ++ @$(RM) $@ @@\ ++ @date @@\ ++ @$(FCLINK) -shared -Wl,-soname=SharedLibrarySonameName(libname)\ @@\ ++ -o $@ `cat version/objects.list` `cernlib -v "" -dy libname\ @@\ ++ | sed s/Concat(-l,libname)//g` @@\ ++ @date ++#endif ++ ++#elif defined(DarwinArchitecture) /* added by Kevin McCarty ++ for fink, 10 May 2003 */ ++#ifndef SharedLibraryTargetName ++#define SharedLibraryTargetName(name)Concat(lib,name.$(LIB_SONAME).$(CERN_LEVEL).dylib) ++#endif ++ ++#ifndef SharedLibraryBuild ++#define SharedLibraryBuild(libname,version) @@\ ++SharedLibraryTargetName(libname): version/objects.list @@\ ++ @echo rebuild version library $@ in $(CURRENT_DIR) @@\ ++ @$(RM) $@ @@\ ++ @/usr/bin/libtool -dynamic -o $@ -compatibility_version $(LIB_SONAME) \ @@\ ++ `cat version/objects.list` `cernlib -v "" -dy libname \ @@\ ++ | sed s/Concat(-l,libname)//g` @@\ ++ @date ++#endif ++ + #elif 1 + #ifndef SharedLibraryBuild + #define SharedLibraryBuild(libname,version) @@\ +diff -urNad cernlib-2006.dfsg.2~/src/config/lnxLib.rules cernlib-2006.dfsg.2/src/config/lnxLib.rules +--- cernlib-2006.dfsg.2~/src/config/lnxLib.rules 1995-12-20 10:26:45.000000000 -0500 ++++ cernlib-2006.dfsg.2/src/config/lnxLib.rules 2007-04-25 23:33:16.000000000 -0400 +@@ -43,6 +43,9 @@ + #ifndef PositionIndependentCplusplusFlags + #define PositionIndependentCplusplusFlags -fPIC + #endif ++#ifndef PositionIndependentFortranFlags ++#define PositionIndependentFortranFlags -fPIC ++#endif + + /* + * InstallSharedLibrary - generate rules to install the shared library. +@@ -50,13 +53,20 @@ + */ + #ifndef InstallSharedLibrary + #define InstallSharedLibrary(libname,rev,dest) @@\ +-install:: Concat(lib,libname.so.rev) @@\ ++.PHONY: install.shlib shlib/libname @@\ ++shlib/libname:: $(DESTDIR)dest/SharedLibraryTargetName(libname) @@\ ++ @@\ ++install.shlib:: $(DESTDIR)dest/SharedLibraryTargetName(libname) @@\ ++ @@\ ++$(DESTDIR)dest/SharedLibraryTargetName(libname): SharedLibraryTargetName(libname) @@\ + MakeDir($(DESTDIR)dest) @@\ +- $(INSTALL) $(INSTALLFLAGS) $(INSTBINFLAGS) Concat(lib,libname.so.rev) $(DESTDIR)dest @@\ +- (T=`echo Concat($(DESTDIR)dest/lib,libname.so.rev) | sed 's/\.[^\.]*$$//'`;\ +- $(RM) $$T && $(LN) Concat(lib,libname.so.rev) $$T) @@\ ++ $(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) SharedLibraryTargetName(libname) $(DESTDIR)dest @@\ ++ $(RM) SharedLibrarySonameName(libname) \ ++ && $(LN) SharedLibraryTargetName(libname) $(DESTDIR)dest/SharedLibrarySonameName(libname) @@\ + $(RM) Concat($(DESTDIR)dest/lib,libname.so) @@\ +- $(LN) Concat(lib,libname.so.rev) Concat($(DESTDIR)dest/lib,libname.so) ++ $(LN) SharedLibraryTargetName(libname) Concat($(DESTDIR)dest/lib,libname.so) @@\ ++ $(RM) $< @@\ ++ $(LN) $@ $< + #endif /* InstallSharedLibrary */ + + /* --- cernlib-2006.dfsg.2.orig/debian/patches/313-comis-preserves-filename-case.dpatch +++ cernlib-2006.dfsg.2/debian/patches/313-comis-preserves-filename-case.dpatch @@ -0,0 +1,43 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 313-comis-preserves-filename-case.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Have COMIS preserve filename case when interpreting FORTRAN code. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuinit.c /tmp/dpep.GROFhd/cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuinit.c +--- cernlib-2005.05.09~/src/packlib/kuip/code_kuip/kuinit.c 2003-02-13 09:25:23.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuinit.c 2005-06-09 15:24:32.751560586 -0400 +@@ -200,6 +200,14 @@ + ku_exel( "/KUIP/SET_SHOW/COLUMNS -1" ); + ku_exel( "/KUIP/SET_SHOW/DOLLAR 'ON'" ); + ++#if defined(UNIX) && (defined(WINNT) || !defined(MSDOS)) ++/* Correct the default behavior of converting filenames to lower-case ++ * on a case-sensitive operating system... Not that I'm bitter or anything. ++ * --Kevin McCarty, for Debian ++ */ ++ ku_exel( "/KUIP/SET_SHOW/FILECASE 'KEEP'" ); ++#endif ++ + host_editor = getenv( "KUIPEDITOR" ); + if( host_editor == NULL ) + host_editor = getenv( "EDITOR" ); +diff -urNad cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuipcdf.cdf /tmp/dpep.GROFhd/cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuipcdf.cdf +--- cernlib-2005.05.09~/src/packlib/kuip/code_kuip/kuipcdf.cdf 1997-09-25 10:02:25.000000000 -0400 ++++ cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuipcdf.cdf 2005-06-09 15:23:49.276738602 -0400 +@@ -1064,11 +1064,12 @@ + . + This command has only an effect on Unix systems to select whether filenames + are kept as entered on the command line. +-The startup value is 'CONVERT', i.e. filenames are converted to lowercase. ++The startup value is 'KEEP', i.e. filename cases are preserved. With ++the 'CONVERT' setting, filenames are converted to lowercase. + . + On other systems filenames are always converted to uppercase. + . +-The 'RESTORE' option set the conversion mode to the value effective ++The 'RESTORE' option sets the conversion mode to the value effective + before the last FILECASE KEEP/CONVERT command. + E.g. the sequence + FILECASE KEEP; EDIT Read.Me; FILECASE RESTORE --- cernlib-2006.dfsg.2.orig/debian/patches/217-abend-on-mathlib-test-failure.dpatch +++ cernlib-2006.dfsg.2/debian/patches/217-abend-on-mathlib-test-failure.dpatch @@ -0,0 +1,18 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 217-abend-on-mathlib-test-failure.dpatch by Kevin B. McCarty +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Force mathlib test program to exit non-zero if any test fails. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/tests/main.F cernlib-2006.dfsg.2/src/mathlib/gen/tests/main.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/tests/main.F 1996-09-17 01:53:22.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/tests/main.F 2008-02-22 12:24:43.000000000 -0800 +@@ -332,5 +332,7 @@ + #endif + C Close output streams + IF (LOUT .NE. 6) CLOSE(UNIT=LOUT) ++C Exit non-zero if any test failed ++ IF (NFAIL .NE. 0) CALL EXITF(1) + STOP + END --- cernlib-2006.dfsg.2.orig/debian/patches/201-update-kuip-helper-apps.dpatch +++ cernlib-2006.dfsg.2/debian/patches/201-update-kuip-helper-apps.dpatch @@ -0,0 +1,41 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 201-update-kuip-helper-apps.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Instead of "ghostview" and "lp", call the more modern helper apps +## DP: "gv" and "lpr" from KUIP. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuinit.c /tmp/dpep.WCaWVF/cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuinit.c +--- cernlib-2005.05.09~/src/packlib/kuip/code_kuip/kuinit.c 2003-02-13 09:25:23.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuinit.c 2005-06-09 12:34:49.057760462 -0400 +@@ -249,7 +249,7 @@ + host_psviewer = getenv( "PSVIEWER" ); + if( host_psviewer == NULL ) { + #ifdef UNIX +- host_psviewer = "ghostview"; ++ host_psviewer = "gv"; + #endif + #ifdef vms + host_psviewer = "VIEW/FORM=PS/INTERFACE=DECWINDOWS"; +@@ -277,7 +277,7 @@ + # if defined(MSDOS) || defined(CERNLIB_WINNT) + ku_exel( "/KUIP/SET_SHOW/HOST_PRINTER 'print $*'" ); + # else +- ku_exel( "/KUIP/SET_SHOW/HOST_PRINTER 'lp $*'" ); ++ ku_exel( "/KUIP/SET_SHOW/HOST_PRINTER 'lpr $*'" ); + # endif + #else + ku_exel( "/KUIP/SET_SHOW/HOST_PRINTER 'XPRINT $*'" ); +diff -urNad cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuipcdf.cdf /tmp/dpep.WCaWVF/cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuipcdf.cdf +--- cernlib-2005.05.09~/src/packlib/kuip/code_kuip/kuipcdf.cdf 1997-09-25 10:02:25.000000000 -0400 ++++ cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuipcdf.cdf 2005-06-09 12:35:59.499480148 -0400 +@@ -925,7 +925,7 @@ + The startup value can be defined by the environment variables + 'KUIPPSVIEWER' or 'PSVIEWER'. + . +-On Unix workstations it is by default set to 'ghostview'. ++On Unix workstations it is by default set to 'gv'. + On VAX/VMS the default commands is 'VIEW/FORM=PS/INTERFACE=DECWINDOWS'. + + >Action kxhostpsviewer%C --- cernlib-2006.dfsg.2.orig/debian/patches/211-support-amd64-and-itanium.dpatch +++ cernlib-2006.dfsg.2/debian/patches/211-support-amd64-and-itanium.dpatch @@ -0,0 +1,1026 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 211-support-amd64-and-itanium.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Large patch from Harald Vogt to make CERNLIB work better +## DP: (at least when statically linked) on 64-bit architectures. +## DP: Slightly modified in an attempt to keep ABI compatibility of the +## DP: dynamic libraries; not that it matters much as they don't work well +## DP: when dynamically linked on 64-bit anyway. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/cfortran/hbook.h cernlib-2006.dfsg.2/src/cfortran/hbook.h +--- cernlib-2006.dfsg.2~/src/cfortran/hbook.h 1999-11-15 17:01:12.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/cfortran/hbook.h 2007-12-14 21:41:27.000000000 +0000 +@@ -489,6 +489,10 @@ + #define HBALLOC(IDN,CHDIR,VAR,BLOCK,ITYPE,ISIZE,IFIRST,NELEM,IBASE,IOFF,NUSE)\ + CCALLSFSUB11(HBALLOC,hballoc,INT,STRING,STRING,STRING,INT,INT,INT,INT,INTV,PINT,PINT,IDN,CHDIR,VAR,BLOCK,ITYPE,ISIZE,IFIRST,NELEM,IBASE,IOFF,NUSE) + ++PROTOCCALLSFSUB11(HBALLOC64,hballoc64,INT,STRING,STRING,STRING,INT,INT,INT,INT,INTV,PLONG,PINT) ++#define HBALLOC64(IDN,CHDIR,VAR,BLOCK,ITYPE,ISIZE,IFIRST,NELEM,IBASE,IOFF,NUSE)\ ++ CCALLSFSUB11(HBALLOC64,hballoc64,INT,STRING,STRING,STRING,INT,INT,INT,INT,INTV,PLONG,PINT,IDN,CHDIR,VAR,BLOCK,ITYPE,ISIZE,IFIRST,NELEM,IBASE,IOFF,NUSE) ++ + PROTOCCALLSFSUB1(HBFREE,hbfree,INT) + #define HBFREE(LUN) CCALLSFSUB1(HBFREE,hbfree,INT,LUN) + +@@ -508,6 +512,13 @@ + #define HGNTBF(IDN,VAR,IOFFST,NVAR,IDNEVT,IERROR)\ + CCALLSFSUB6(HGNTBF,hgntbf,INT,ZTRINGV,INTV,INT,INT,PINT,IDN,VAR,IOFFST,NVAR,IDNEVT,IERROR) + ++PROTOCCALLSFSUB6(HGNTBF64,hgntbf64,INT,ZTRINGV,LONGV,INT,INT,PINT) ++/* fix the element length of VAR to 32 */ ++#define hgntbf64_ELEMS_2 ZTRINGV_ARGS(4) ++#define hgntbf64_ELEMLEN_2 ZTRINGV_NUM(32) ++#define HGNTBF64(IDN,VAR,IOFFST,NVAR,IDNEVT,IERROR)\ ++ CCALLSFSUB6(HGNTBF64,hgntbf64,INT,ZTRINGV,LONGV,INT,INT,PINT,IDN,VAR,IOFFST,NVAR,IDNEVT,IERROR) ++ + PROTOCCALLSFSUB1(HGTDIR,hgtdir,PSTRING) + #define HGTDIR(CHDIR) CCALLSFSUB1(HGTDIR,hgtdir,PSTRING,CHDIR) + +diff -urNad cernlib-2006.dfsg.2~/src/packlib/cspack/cspack/hcntpar.inc cernlib-2006.dfsg.2/src/packlib/cspack/cspack/hcntpar.inc +--- cernlib-2006.dfsg.2~/src/packlib/cspack/cspack/hcntpar.inc 1996-03-08 15:44:16.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/cspack/cspack/hcntpar.inc 2007-12-14 21:41:27.000000000 +0000 +@@ -22,7 +22,7 @@ + + ZIFREA=7, ZNWTIT=8, ZITIT1=9, ZNCHRZ=13, ZIFBIT=8, + + ZDESC=1, ZLNAME=2, ZNAME=3, ZRANGE=4, ZNADDR=12, + + ZARIND=11, ZIBLOK=8, ZNBLOK=10, ZIBANK=9, ZIFTMP=11, +- + ZITMP=10, ZNTMP=5, ZNTMP1=3, ZLINK=6) ++ + ZITMP=10, ZNTMP=5, ZNTMP1=4, ZLINK=6) + * + + #endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/cspack/sysreq/netreq.c cernlib-2006.dfsg.2/src/packlib/cspack/sysreq/netreq.c +--- cernlib-2006.dfsg.2~/src/packlib/cspack/sysreq/netreq.c 2007-12-14 21:41:17.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/cspack/sysreq/netreq.c 2007-12-14 21:41:27.000000000 +0000 +@@ -341,7 +341,7 @@ + return(-errno); + } + TRACE(2, "sysreq", "recv reply length"); +- if ((int)(p = RecvStr(s, &replylen)) <0) { ++ if ((long)(p = RecvStr(s, &replylen)) <0) { + TRACE(2, "sysreq", "RecvStr(RepLen): (errno=%d)", errno); + (void) close(s); + END_TRACE(); +diff -urNad cernlib-2006.dfsg.2~/src/packlib/hbook/hbook/hcntpar.inc cernlib-2006.dfsg.2/src/packlib/hbook/hbook/hcntpar.inc +--- cernlib-2006.dfsg.2~/src/packlib/hbook/hbook/hcntpar.inc 1996-01-16 17:07:52.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/hbook/hbook/hcntpar.inc 2007-12-14 21:41:27.000000000 +0000 +@@ -24,7 +24,7 @@ + + ZIFREA=7, ZNWTIT=8, ZITIT1=9, ZNCHRZ=13, ZIFBIT=8, + + ZDESC=1, ZLNAME=2, ZNAME=3, ZRANGE=4, ZNADDR=12, + + ZARIND=11, ZIBLOK=8, ZNBLOK=10, ZIBANK=9, ZIFTMP=11, +- + ZID=12, ZITMP=10, ZNTMP=6, ZNTMP1=3, ZLINK=6) ++ + ZID=12, ZITMP=10, ZNTMP=6, ZNTMP1=4, ZLINK=6) + * + + #endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/hbook/hmmap/hcreatem.F cernlib-2006.dfsg.2/src/packlib/hbook/hmmap/hcreatem.F +--- cernlib-2006.dfsg.2~/src/packlib/hbook/hmmap/hcreatem.F 1996-03-13 10:13:20.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/hbook/hmmap/hcreatem.F 2007-12-14 21:41:27.000000000 +0000 +@@ -39,11 +39,11 @@ + ************************************************************************ + * + CHARACTER*(*) MFILE +-#if !defined(CERNLIB_ALPHA_OSF) ++#if !defined(CERNLIB_ALPHA_OSF) && !defined(CERNLIB_QMLXIA64) + INTEGER ICOMAD(1), ISIZE, IBASE(1), HCREATEI + SAVE ICOMAD + #endif +-#if defined(CERNLIB_ALPHA_OSF) ++#if defined(CERNLIB_ALPHA_OSF) || defined(CERNLIB_QMLXIA64) + INTEGER ISIZE, IBASE(1), HCREATEI + INTEGER*8 ICOMAD(1) + SAVE ICOMAD +@@ -63,6 +63,10 @@ + ************************************************************************ + ICOMAD(1) = 0 + #endif ++#if defined(CERNLIB_QMLXIA64) ++C this should be a reasonable range for IA64 architectures ++ ICOMAD(1) = 2**30 ++#endif + #if (defined(CERNLIB_DECS))&&(!defined(CERNLIB_ALPHA)) + ICOMAD(1) = 4*LOCF(ICOMAD(1)) + MFEN + ICOMAD(1) = ((ICOMAD(1)+4095)/4096)*4096 +diff -urNad cernlib-2006.dfsg.2~/src/packlib/hbook/hmmap/hmapm.F cernlib-2006.dfsg.2/src/packlib/hbook/hmmap/hmapm.F +--- cernlib-2006.dfsg.2~/src/packlib/hbook/hmmap/hmapm.F 2001-10-02 09:06:15.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/hbook/hmmap/hmapm.F 2007-12-14 21:41:27.000000000 +0000 +@@ -54,11 +54,11 @@ + ************************************************************************ + * + CHARACTER*(*) MFILE +-#if !defined(CERNLIB_ALPHA_OSF) ++#if !defined(CERNLIB_ALPHA_OSF) && !defined(CERNLIB_QMLXIA64) + INTEGER ICOMAD(1), IBASE(1), HMAPI + SAVE ICOMAD + #endif +-#if defined(CERNLIB_ALPHA_OSF) ++#if defined(CERNLIB_ALPHA_OSF) || defined(CERNLIB_QMLXIA64) + INTEGER IBASE(1), HMAPI + INTEGER*8 ICOMAD(1) + SAVE ICOMAD +@@ -81,6 +81,10 @@ + CALL UCTOH(MFILE2,MKEY,4,4) + ICOMAD(1) = 0 + #endif ++#if defined(CERNLIB_QMLXIA64) ++C this should be a reasonable range for IA64 architectures ++ ICOMAD(1) = 2**30 ++#endif + #if defined(CERNLIB_DECS) + ICOMAD(1) = 4*LOCF(ICOMAD(1)) + MFEN + ICOMAD(1) = ((ICOMAD(1)+4095)/4096)*4096 +diff -urNad cernlib-2006.dfsg.2~/src/packlib/hbook/hntup/hballoc.F cernlib-2006.dfsg.2/src/packlib/hbook/hntup/hballoc.F +--- cernlib-2006.dfsg.2~/src/packlib/hbook/hntup/hballoc.F 1996-01-16 17:07:56.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/hbook/hntup/hballoc.F 2007-12-14 21:41:27.000000000 +0000 +@@ -42,3 +42,26 @@ + ENDIF + * + END ++* ++* 64-bit version (separate to preserve ABI compatibility) ++ SUBROUTINE HBALLOC64(IDN,CHDIR,VAR,BLOCK,ITYPE,ISIZE,IFIRST,NELEM, ++ + IBASE,IOFF,NUSE) ++* ++ CHARACTER*(*) CHDIR, VAR, BLOCK ++ INTEGER IDN, ITYPE, ISIZE, NELEM, NUSE, IFIRST, IBASE(1) ++ INTEGER*8 IBUF(1), IOFF ++* ++ LC = LENOCC(CHDIR) ++ LV = LENOCC(VAR) ++ LB = LENOCC(BLOCK) ++* ++ CALL HBALLO1(IDN, CHDIR, LC, VAR, LV, BLOCK, LB, ITYPE, ISIZE, ++ + IFIRST, NELEM, IBUF, NUSE) ++* ++ IF (NUSE .EQ. 0) THEN ++ IOFF = 0 ++ ELSE ++ IOFF = IBUF(1) - LOC(IBASE(1))/4 ++ ENDIF ++* ++ END +diff -urNad cernlib-2006.dfsg.2~/src/packlib/hbook/hntup/hbnt.F cernlib-2006.dfsg.2/src/packlib/hbook/hntup/hbnt.F +--- cernlib-2006.dfsg.2~/src/packlib/hbook/hntup/hbnt.F 1996-01-16 17:07:56.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/hbook/hntup/hbnt.F 2007-12-14 21:41:27.000000000 +0000 +@@ -269,11 +269,13 @@ + ************************************************************************ + * * * * + * 1 * * Number of variables to be read out * +- * * * *** For every variable 3 words (ZNTMP1) *** * ++ * * * *** For every variable 4 words (ZNTMP1) *** * + * 2 * * Index of variable in LNAME bank * + * 3 * * Offset of variable in LNAME bank (INDX-1)*ZNADDR* + * 4 * * Offset in dynamically allocated buffer (only * + * * * used via HGNTBF) otherwise 0 * ++ * 5 * * spare (used in 64 bit architectures for upper * ++ * * * address part) * + ************************************************************************ + #endif + * +diff -urNad cernlib-2006.dfsg.2~/src/packlib/hbook/hntup/hgnt2.F cernlib-2006.dfsg.2/src/packlib/hbook/hntup/hgnt2.F +--- cernlib-2006.dfsg.2~/src/packlib/hbook/hntup/hgnt2.F 1999-03-05 15:42:35.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/hbook/hntup/hgnt2.F 2007-12-14 21:41:27.000000000 +0000 +@@ -34,7 +34,13 @@ + #include "hbook/hcrecv.inc" + * + CHARACTER*(*) VAR1(*) ++#if defined(CERNLIB_QMLXIA64) ++ INTEGER*8 IVOFF(*), IOFFST, IOFFSTT ++ INTEGER IOFFSTV(2) ++ EQUIVALENCE (IOFFSTV, IOFFSTT) ++#else + INTEGER IVOFF(*) ++#endif + CHARACTER*32 VAR + INTEGER ILOGIC, HNMPTR + LOGICAL LOGIC, INDVAR, ALLVAR, USEBUF, CHKOFF +@@ -452,12 +458,21 @@ + IQ(LTMP1+JTMP+1) = IOFF + IF (USEBUF) THEN + IF (IEDIF .EQ. 0) THEN +- IQ(LTMP1+JTMP+2) = IOFFST ++ IOFFSTT = IOFFST + ELSE +- IQ(LTMP1+JTMP+2) = IOFFST + (IEDIF*ISHFT(ISIZE,-2)) ++ IOFFSTT = IOFFST + (IEDIF*ISHFT(ISIZE,-2)) + ENDIF ++ IQ(LTMP1+JTMP+2) = IOFFSTT ++#if defined(CERNLIB_QMLXIA64) ++* store upper part of 64 bit address ++ IQ(LTMP1+JTMP+3) = IOFFSTV(2) ++#endif + ELSE + IQ(LTMP1+JTMP+2) = 0 ++#if defined(CERNLIB_QMLXIA64) ++* reset upper part of 64 bit address ++ IQ(LTMP1+JTMP+3) = 0 ++#endif + ENDIF + LQ(LTMP1-IQ(LTMP1+1)) = LBLOK + * +diff -urNad cernlib-2006.dfsg.2~/src/packlib/hbook/hntup/hgntbf.F cernlib-2006.dfsg.2/src/packlib/hbook/hntup/hgntbf.F +--- cernlib-2006.dfsg.2~/src/packlib/hbook/hntup/hgntbf.F 1996-01-16 17:07:57.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/hbook/hntup/hgntbf.F 2007-12-14 21:41:27.000000000 +0000 +@@ -26,3 +26,13 @@ + CALL HGNT1(IDN, '*', VAR, IOFFST, NVAR1, IDNEVT, IERROR) + * + END ++* ++* 64-bit version (separate to preserve ABI compatibility) ++ SUBROUTINE HGNTBF64(IDN,VAR,IOFFST,NVAR,IDNEVT,IERROR) ++ CHARACTER*(*) VAR(*) ++ INTEGER*8 IOFFST(*) ++* ++ NVAR1 = -NVAR ++ CALL HGNT1(IDN, '*', VAR, IOFFST, NVAR1, IDNEVT, IERROR) ++* ++ END +diff -urNad cernlib-2006.dfsg.2~/src/packlib/hbook/hntup/hgntf.F cernlib-2006.dfsg.2/src/packlib/hbook/hntup/hgntf.F +--- cernlib-2006.dfsg.2~/src/packlib/hbook/hntup/hgntf.F 1999-03-05 15:42:35.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/hbook/hntup/hgntf.F 2007-12-14 21:41:27.000000000 +0000 +@@ -37,6 +37,13 @@ + INTEGER ILOGIC + LOGICAL LOGIC, INDVAR, USEBUF + EQUIVALENCE (LOGIC, ILOGIC) ++ ++#if defined(CERNLIB_QMLXIA64) ++ INTEGER*8 IOFFST, IOFFSTT ++ INTEGER IOFFSTV(2) ++ EQUIVALENCE (IOFFSTV, IOFFSTT) ++#endif ++ + * + #include "hbook/jbyt.inc" + * +@@ -76,6 +83,12 @@ + INDX = IQ(LTMP1+JTMP) + IOFF = IQ(LTMP1+JTMP+1) + IOFFST = IQ(LTMP1+JTMP+2) ++#if defined(CERNLIB_QMLXIA64) ++* fetch full 64 bit address ++ IOFFSTV(1) = IQ(LTMP1+JTMP+2) ++ IOFFSTV(2) = IQ(LTMP1+JTMP+3) ++ IOFFST = IOFFSTT ++#endif + IF (IOFFST .EQ. 0) THEN + USEBUF = .FALSE. + ELSE +@@ -442,12 +455,21 @@ + * + IF (USEBUF) THEN + IF (IEDIF .EQ. 0) THEN +- IQ(LTMP1+JTMP+2) = IOFFST ++ IOFFSTT = IOFFST + ELSE +- IQ(LTMP1+JTMP+2) = IOFFST + (IEDIF*ISHFT(ISIZE,-2)) ++ IOFFSTT = IOFFST + (IEDIF*ISHFT(ISIZE,-2)) + ENDIF ++ IQ(LTMP1+JTMP+2) = IOFFSTT ++#if defined(CERNLIB_QMLXIA64) ++* store upper part of 64 bit address ++ IQ(LTMP1+JTMP+3) = IOFFSTV(2) ++#endif + ELSE + IQ(LTMP1+JTMP+2) = 0 ++#if defined(CERNLIB_QMLXIA64) ++* reset upper part of 64 bit address ++ IQ(LTMP1+JTMP+3) = 0 ++#endif + ENDIF + * + 40 CONTINUE +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/Imakefile cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/Imakefile 2002-09-19 16:44:52.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/Imakefile 2007-12-14 21:41:27.000000000 +0000 +@@ -11,6 +11,10 @@ + sleepf.c signalf.c sigprnt.c sigunbl.c stati.c systei.c \ @@\ + tminit.c unlini.c tmread.c + ++#ifdef CERNLIB_QMLXIA64 ++SRCS_C += chkloc.c ++#endif ++ + #ifndef CERNLIB_OS9 + SRCS_C += timel.c lstati.c + #endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/chkloc.c cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/chkloc.c +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/chkloc.c 1970-01-01 00:00:00.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/chkloc.c 2007-12-14 21:41:27.000000000 +0000 +@@ -0,0 +1,10 @@ ++/* ++ * Utility routine for locf and locb ++ * H. Vogt (harald.vogt@desy.de) ++ * ++ */ ++ ++#if defined(CERNLIB_QMLXIA64) ++#include "lp64gs/chkloc.c" ++#endif ++ +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/jumptn.c cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/jumptn.c +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/jumptn.c 2004-07-29 14:07:43.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/jumptn.c 2007-12-14 21:41:27.000000000 +0000 +@@ -20,8 +20,10 @@ + */ + #include "kerngen/pilot.h" + +-#if defined(CERNLIB_QMLXIA64)||defined(CERNLIB_QMVAOS) +-#include "vaogs/jumptn.c" ++#if defined(CERNLIB_QMVAOS) ++#include "vaogs/jumptn.c" ++#elif defined(CERNLIB_QMLXIA64) ++#include "lp64gs/jumptn.c" + #else + /*> ROUTINE JUMPTN + CERN PROGLIB# Z043 JUMPTN .VERSION KERNFOR 4.40 940929 +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/jumpxn.c cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/jumpxn.c +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/jumpxn.c 2004-07-29 14:07:43.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/jumpxn.c 2007-12-14 21:41:27.000000000 +0000 +@@ -20,8 +20,10 @@ + */ + #include "kerngen/pilot.h" + +-#if defined(CERNLIB_QMLXIA64)||defined(CERNLIB_QMVAOS) ++#if defined(CERNLIB_QMVAOS) + #include "vaogs/jumpxn.c" ++#elif defined(CERNLIB_QMLXIA64) ++#include "lp64gs/jumpxn.c" + #else + /*> ROUTINE JUMPXN + CERN PROGLIB# Z042 JUMPXN .VERSION KERNFOR 4.40 940929 +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/lenocc.c cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/lenocc.c +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/lenocc.c 1997-10-23 16:25:11.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/lenocc.c 2007-12-14 21:41:27.000000000 +0000 +@@ -46,7 +46,7 @@ + + /* look at the last ntail characters */ + +- ntail = ((int)chcur & 3); ++ ntail = ((unsigned long)chcur & 3); + for (i = ntail; i > 0; i--) + { if (*--chcur != ' ') goto exit; } + +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/locb.c cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/locb.c +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/locb.c 1997-09-02 14:26:37.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/locb.c 2007-12-14 21:41:27.000000000 +0000 +@@ -26,6 +26,9 @@ + # define DummyDef + #endif + ++#if defined(CERNLIB_QMLXIA64) ++#include "lp64gs/locb.c" ++#else + + /*> ROUTINE LOCB + CERN PROGLIB# N101 LOCB .VERSION KERNFOR 4.36 930602 +@@ -47,6 +50,8 @@ + return( (int) iadr ); + } + /*> END <----------------------------------------------------------*/ ++#endif + #ifdef CERNLIB_TCGEN_LOCB + #undef CERNLIB_TCGEN_LOCB + #endif ++ +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/locf.c cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/locf.c +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/locf.c 2004-07-29 14:06:07.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/locf.c 2007-12-14 21:41:27.000000000 +0000 +@@ -50,6 +50,8 @@ + #include "irtdgs/locf.c" + #elif defined(CERNLIB_QMVAOS) + #include "vaogs/locf.c" ++#elif defined(CERNLIB_QMLXIA64) ++#include "lp64gs/locf.c" + #else + /*> ROUTINE LOCF + CERN PROGLIB# N100 LOCF .VERSION KERNFOR 4.36 930602 +@@ -68,25 +70,7 @@ + DummyDef + #endif + { +-#if defined(CERNLIB_QMLXIA64) +- const unsigned long long int mask=0x00000000ffffffff; +- static unsigned long long int base=1; +- unsigned long long int jadr=(unsigned long long int) iadr; +- unsigned long long int jadrl = ((mask & jadr) >> LADUPW); +- +- if (base == 1) { +- base = (~mask & jadr); +- } else if(base != (~mask & jadr)) { +- printf("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"); +- printf("locf_() Warning: changing base from %lx to %lx!!!\n", +- base, (~mask & jadr)); +- printf("This may result in program crash or incorrect results\n"); +- printf("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"); +- } +- return ((unsigned) jadrl); +-#else + return( ((unsigned) iadr) >> LADUPW ); +-#endif + } + #undef Dummy2LocPar + #undef DummyDef +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/lp64gs/chkloc.c cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/lp64gs/chkloc.c +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/lp64gs/chkloc.c 1970-01-01 00:00:00.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/lp64gs/chkloc.c 2007-12-14 21:41:27.000000000 +0000 +@@ -0,0 +1,58 @@ ++/* ++ * ++ * Revision 1.1.1.1 2006/06/14 ++ * Kernlib utility for locf, locb on LP64 architectures H. Vogt ++ * (AMD64/Intel EM64T and IA64) ++ * ++ */ ++ ++#include ++#include ++ ++/*> ROUTINE LOCF ++ CERN PROGLIB# N100 LOCF .VERSION KERNFOR 4.36 930602 ++*/ ++/*> ROUTINE LOCB ++ CERN PROGLIB# N101 LOCB .VERSION KERNFOR 4.36 930602 ++*/ ++ ++unsigned int chkloc(iadr) ++ char *iadr; ++{ ++ /* 64 bit architectures may exceed the 32 bit address space ! */ ++ ++ /* AMD64/Intel EM64T architectures have the dynamic segments above ++ 0x80000000000 and the stack immediately below this whereas the text and ++ data segments are staring from 0x400000. The implementations address ++ space is limited to 0x00007fffffffffff. ++ Allocated memory with malloc/calloc is starting from the end of text and ++ data segments upwards. ++ ++ IA64 architectures have the dynamic segments are above 0x2000000000000000, ++ the stack is above 0x8000000000000000, the data segments starts at ++ 0x6000000000000000 and the text segments start at 0x4000000000000000 ++ Allocated memory with malloc/calloc is starting from the end of ++ data segments upwards. All addresses here are expected to be in ++ the data segment area. */ ++ ++ const unsigned long mask=0xffffffff00000000; ++ static unsigned long limit=0x00000000ffffffff; ++ unsigned long jadr=((unsigned long) iadr & mask); ++#if !defined (__ia64__) ++ if ( jadr != 0x0000000000000000) { ++#else ++ if ( jadr != 0x6000000000000000) { ++#endif ++ fprintf(stderr, "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"); ++ fprintf(stderr, "LOCB/LOCF: address %p exceeds the 32 bit address space\n", iadr); ++ fprintf(stderr, "or is not in the data segments\n"); ++ fprintf(stderr, "This may result in program crash or incorrect results\n"); ++ fprintf(stderr, "Therefore we will stop here\n"); ++ fprintf(stderr, "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"); ++ exit (999); ++ } ++ jadr=((unsigned long) iadr & limit); ++ return ((unsigned) jadr); ++} ++/*> END <----------------------------------------------------------*/ ++ +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/lp64gs/jumptn.c cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/lp64gs/jumptn.c +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/lp64gs/jumptn.c 1970-01-01 00:00:00.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/lp64gs/jumptn.c 2007-12-14 21:41:27.000000000 +0000 +@@ -0,0 +1,83 @@ ++/* ++ * $Id: jumptn.c,v 1.1.1.1 1996/02/15 17:49:32 mclareni Exp $ ++ * ++ * $Log: jumptn.c,v $ ++ * Revision 1.1.1.1 1996/02/15 17:49:32 mclareni ++ * Kernlib ++ * ++ */ ++/*> ROUTINE JUMPTN ++ CERN PROGLIB# Z043 JUMPTN .VERSION KERNLP64 1.00 060717 ++ Copy of JUMPTN .VERSION KERNVMI 1.09 940531 ++ ORIG. 21/04/88 JZ+FCA ++C ++C- To transfer to the user routine TARGET (say) with 2 parameters ++C- two steps are needed : ++ ++C- 1) EXTERNAL TARGET to get the address of TARGET ++C- IADR = JUMPAD (TARGET) ++ ++C- 3) CALL JUMPT2 (IADR,par1,par2) to transfer ++*/ ++#define jumpt0 jumpt0_ ++#define jumpt1 jumpt1_ ++#define jumpt2 jumpt2_ ++#define jumpt3 jumpt3_ ++#define jumpt4 jumpt4_ ++ ++extern int jumpad_(); ++ ++static void (*jumpto)(); ++ ++void jumpt0(iadr) ++ int *iadr; ++{ ++ long func; ++ func = *iadr + (long)jumpad_; ++ jumpto = (void(*)()) func; ++ jumpto(); ++ return; ++} ++ ++void jumpt1(iadr,ipara) ++ int *iadr; ++ char *ipara; ++{ ++ long func; ++ func = *iadr + (long)jumpad_; ++ jumpto = (void(*)()) func; ++ jumpto (ipara); ++ return; ++} ++ ++void jumpt2(iadr, ipara, iparb) ++ int *iadr; ++ char *ipara, *iparb; ++{ ++ long func; ++ func = *iadr + (long)jumpad_; ++ jumpto = (void(*)()) func; ++ jumpto (ipara, iparb); ++ return; ++} ++void jumpt3(iadr, ipara, iparb, iparc) ++ int *iadr; ++ char *ipara, *iparb, *iparc; ++{ ++ long func; ++ func = *iadr + (long)jumpad_; ++ jumpto = (void(*)()) func; ++ jumpto (ipara, iparb, iparc); ++ return; ++} ++void jumpt4(iadr, ipara, iparb, iparc, ipard) ++ int *iadr; ++ char *ipara, *iparb, *iparc, *ipard; ++{ ++ long func; ++ func = *iadr + (long)jumpad_; ++ jumpto = (void(*)()) func; ++ jumpto (ipara, iparb, iparc, ipard); ++ return; ++} ++/*> END <----------------------------------------------------------*/ +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/lp64gs/jumpxn.c cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/lp64gs/jumpxn.c +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/lp64gs/jumpxn.c 1970-01-01 00:00:00.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/lp64gs/jumpxn.c 2007-12-14 21:41:27.000000000 +0000 +@@ -0,0 +1,92 @@ ++/* ++ * $Id: jumpxn.c,v 1.1.1.1 1996/02/15 17:49:32 mclareni Exp $ ++ * ++ * $Log: jumpxn.c,v $ ++ * Revision 1.1.1.1 1996/02/15 17:49:32 mclareni ++ * Kernlib ++ * ++ */ ++/*> ROUTINE JUMPXN ++ CERN PROGLIB# Z043 JUMPXN .VERSION KERNLP64 1.00 060717 ++ Copy of JUMPXN .VERSION KERNVMI 1.08 930527 ++ ORIG. 21/04/88 JZ+FCA, adapted 11/05/93 AP+JZ ++C ++C- To transfer to the user routine TARGET (say) with 2 parameters ++C- three steps are needed : ++C- Check that relative jump addresses fits into 32 bits ++ ++C- 1) EXTERNAL TARGET to get the address of TARGET ++C- IADR = JUMPAD (TARGET) ++ ++C- 2) CALL JUMPST (IADR) to set the tranfer address ++ ++C- 3) CALL JUMPX2 (par1,par2) to transfer ++*/ ++ ++#include "stdio.h" ++#include ++ ++static void (*tarsub)(); ++ ++/* ---- jumpad --------------------------------------------- */ ++int jumpad_(ifun) ++ char *ifun; ++{ ++ long temp; ++ ++ temp = (long)ifun - (long)jumpad_; ++ if (labs(temp) > 0x3fffffff) { ++ printf("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"); ++ printf("JUMPAD: address %p exceeds the 32 bit address space\n", temp); ++ printf("This may result in program crash or incorrect results\n"); ++ printf("Therefore we will stop here\n"); ++ printf("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"); ++ exit (999); ++ } ++ return (int) temp; ++} ++ ++/* ---- jumpst --------------------------------------------- */ ++void jumpst_(iadr) ++ int *iadr; ++{ ++ long true; ++ ++ true = (long)jumpad_; ++ true = true + *iadr; ++ tarsub = (void (*)())true; ++} ++ ++/* ---- jumpxn --------------------------------------------- */ ++void jumpx0_() ++{ ++ (*tarsub)(); ++ return; ++} ++ ++void jumpx1_(ipara) ++ char *ipara; ++{ ++ (*tarsub)(ipara); ++ return; ++} ++ ++void jumpx2_(ipara, iparb) ++ char *ipara, *iparb; ++{ ++ (*tarsub)(ipara, iparb); ++ return; ++} ++void jumpx3_(ipara, iparb, iparc) ++ char *ipara, *iparb, *iparc; ++{ ++ (*tarsub)(ipara, iparb, iparc); ++ return; ++} ++void jumpx4_(ipara, iparb, iparc, ipard) ++ char *ipara, *iparb, *iparc, *ipard; ++{ ++ (*tarsub)(ipara, iparb, iparc, ipard); ++ return; ++} ++/*> END <----------------------------------------------------------*/ +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/lp64gs/locb.c cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/lp64gs/locb.c +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/lp64gs/locb.c 1970-01-01 00:00:00.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/lp64gs/locb.c 2007-12-14 21:52:38.000000000 +0000 +@@ -0,0 +1,37 @@ ++/*> ROUTINE LOCB ++ CERN PROGLIB# N101 LOCB .VERSION KERNFOR 4.36 930602 ++*/ ++ ++unsigned int chkloc(char *address); ++ ++unsigned int locb_(iadr) ++ char *iadr; ++{ ++ return (chkloc(iadr)); ++} ++ ++#include /* for ptrdiff_t, size_t */ ++#include /* for fprintf */ ++#include /* for exit */ ++ ++int iptrdiff_(iadr1, iadr2) ++ char * iadr1, * iadr2; ++{ ++ long diff = (long)iadr1 - (long)iadr2; ++ if (diff < (long)INT32_MIN || diff > (long)INT32_MAX) { ++ fprintf(stderr, "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"); ++ fprintf(stderr, "IPTRDIFF: difference of addresses %p and %p\n", iadr1, iadr2); ++ fprintf(stderr, "cannot be stored in 32-bit signed integer!\n"); ++ fprintf(stderr, "This may result in program crash or incorrect results\n"); ++ fprintf(stderr, "Therefore we will stop here\n"); ++ fprintf(stderr, "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"); ++ exit (999); ++ } ++ else return (int)diff; ++} ++ ++int iptrsame_(iadr1, iadr2) ++ char * iadr1, * iadr2; ++{ ++ return (size_t)iadr1 == (size_t)iadr2 ? 1 : 0; ++} +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/lp64gs/locf.c cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/lp64gs/locf.c +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/lp64gs/locf.c 1970-01-01 00:00:00.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/lp64gs/locf.c 2007-12-14 21:41:27.000000000 +0000 +@@ -0,0 +1,10 @@ ++/*> ROUTINE LOCF ++ CERN PROGLIB# N100 LOCF .VERSION KERNFOR 4.36 930602 ++*/ ++unsigned int chkloc(char *address); ++ ++unsigned int locf_(iadr) ++ char *iadr; ++{ ++ return ( (chkloc(iadr)) >> 2 ); ++} +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/signalf.c cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/signalf.c +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/ccgen/signalf.c 1999-10-06 14:17:01.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/ccgen/signalf.c 2007-12-14 21:41:27.000000000 +0000 +@@ -45,6 +45,7 @@ + C- function value = adr of previous handler + */ + #include ++typedef void (*sighandler_t)(int); + #if defined(CERNLIB_QX_SC) + int type_of_call signalf_(signum,funct,flag) + #endif +@@ -58,7 +59,7 @@ + int *funct; + { + int signo, istat; +- int handler; ++ sighandler_t handler; + void *oldhand; + + signo = *signum; +@@ -67,14 +68,15 @@ + if (*flag < 0) handler = *funct; + #endif + #if !defined(CERNLIB_QCCINDAD) +- if (*flag < 0) handler = (int)funct; ++ if (*flag < 0) handler = (sighandler_t)funct; + #endif +- else if (*flag == 0) handler = (int)SIG_DFL; +- else if (*flag == 1) handler = (int)SIG_IGN; +- else handler = *flag; ++ else if (*flag == 0) handler = (sighandler_t)SIG_DFL; ++ else if (*flag == 1) handler = (sighandler_t)SIG_IGN; ++ else handler = (sighandler_t)(long)*flag; + + oldhand = signal(signo,handler); +- istat = (int)oldhand; ++ unsigned long myistat = (unsigned long)oldhand; ++ istat = (int)myistat; + #ifndef __GNUC__ + if (oldhand == SIG_ERR) istat = -1; + #endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/code_kuip/kkern.c cernlib-2006.dfsg.2/src/packlib/kuip/code_kuip/kkern.c +--- cernlib-2006.dfsg.2~/src/packlib/kuip/code_kuip/kkern.c 1996-05-01 12:08:38.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/code_kuip/kkern.c 2007-12-14 21:41:27.000000000 +0000 +@@ -39,7 +39,8 @@ + if( len >= (sizeof blanks) * 4 ) { + + /* check single characters until next word boundary */ +- switch( (int)&str[len] & ( (sizeof blanks) - 1 ) ) { ++ /* use type long here to be conform with 64 bit architectures*/ ++ switch( (long)&str[len] & ( (sizeof blanks) - 1 ) ) { + case 7: + if( str[--len] != ' ' ) return len + 1; + case 6: +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/code_motif/kmbrow.c cernlib-2006.dfsg.2/src/packlib/kuip/code_motif/kmbrow.c +--- cernlib-2006.dfsg.2~/src/packlib/kuip/code_motif/kmbrow.c 1996-03-08 15:33:08.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/code_motif/kmbrow.c 2007-12-14 21:41:27.000000000 +0000 +@@ -278,7 +278,7 @@ + char *path, *title; + char cval[MAX_string], cval1[MAX_string]; + int i, fitem, fcnt, dcnt, icon_type; +- int browser_count = 0; ++ long browser_count = 0; + + BrObject *brobj; + +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/code_motif/kuxxt.c cernlib-2006.dfsg.2/src/packlib/kuip/code_motif/kuxxt.c +--- cernlib-2006.dfsg.2~/src/packlib/kuip/code_motif/kuxxt.c 1996-03-08 15:33:11.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/code_motif/kuxxt.c 2007-12-14 21:41:27.000000000 +0000 +@@ -340,7 +340,7 @@ + { + (void) XDeleteContext( XtDisplay( UxTopLevel ), + (Window) wgt, +- (XContext) client_data ); ++ (XContext) (long)client_data ); + } + + /****************************************************************************** +@@ -385,7 +385,7 @@ + return ( UX_ERROR ); + + XtAddCallback (wgt, XmNdestroyCallback, +- UxDeleteContextCB, (XtPointer) xcontext_id); ++ UxDeleteContextCB, (XtPointer) (long)xcontext_id); + + return ( UX_NO_ERROR ); + } +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/code_motif/mkdcmp.c cernlib-2006.dfsg.2/src/packlib/kuip/code_motif/mkdcmp.c +--- cernlib-2006.dfsg.2~/src/packlib/kuip/code_motif/mkdcmp.c 1996-03-15 15:54:00.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/code_motif/mkdcmp.c 2007-12-14 21:41:27.000000000 +0000 +@@ -1541,7 +1541,11 @@ + + Widget cpanel = stag->command_panel; + KmCommand *cmd = stag->cmd; +- int ipar = stag->index; ++ /* for 64 bit compatibility take long here ++ * int ipar = stag->index; ++ */ ++ long ipar = stag->index; ++ + KmParameter *par = cmd->par[ipar]; + KmParFile *pfil = par->ptype; + +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/code_motif/mkdgra.c cernlib-2006.dfsg.2/src/packlib/kuip/code_motif/mkdgra.c +--- cernlib-2006.dfsg.2~/src/packlib/kuip/code_motif/mkdgra.c 1996-03-08 15:33:07.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/code_motif/mkdgra.c 2007-12-14 21:41:27.000000000 +0000 +@@ -289,11 +289,12 @@ + km_graph_init_callbacks (km_graphicsDraw, graph_widget, wkid, 0); + } + +-void km_graph_init_callbacks (draw, graph_widget, wkid, flag) ++void km_graph_init_callbacks (draw, graph_widget, mywkid, flag) + Widget draw, graph_widget; +- int wkid, flag; ++ int mywkid, flag; + { + /* Add drawing area expose and resize callbacks */ ++ long wkid = mywkid; + if (flag == 0) { + XtAddCallback(draw, XmNexposeCallback, + (XtCallbackProc)drawing_area_callback, graph_widget); +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/code_motif/mkuip.c cernlib-2006.dfsg.2/src/packlib/kuip/code_motif/mkuip.c +--- cernlib-2006.dfsg.2~/src/packlib/kuip/code_motif/mkuip.c 2007-12-14 21:41:17.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/code_motif/mkuip.c 2007-12-14 21:41:27.000000000 +0000 +@@ -1687,7 +1687,7 @@ + XmStringFree(xmstr); + } /* end for ... */ + XtAddCallback (km_listSBox,XmNokCallback, +- (XtCallbackProc)kuipList_OK, (XtPointer)flag); ++ (XtCallbackProc)kuipList_OK, (XtPointer) (long)flag); + XtAddCallback (km_listSBox,XmNcancelCallback, + (XtCallbackProc)destroy_list_id, NULL); + XtAddCallback (km_listSBox,XmNhelpCallback, +@@ -1914,7 +1914,7 @@ + PdMenu = XmCreatePushButtonGadget + (kuipControlShellM,appShell_title[i],arglist,0); + XtAddCallback(PdMenu,XmNactivateCallback, +- (XtCallbackProc)appShell_activate, (XtPointer)i); ++ (XtCallbackProc)appShell_activate, (XtPointer) (long)i); + XtManageChild(PdMenu); + break; + } /* end ... if (appShell[i] == NULL) */ +@@ -1972,7 +1972,7 @@ + PdMenu = XmCreatePushButtonGadget + (kuipControlShellM,appShell_title[i],arglist,0); + XtAddCallback (PdMenu,XmNactivateCallback, +- (XtCallbackProc)appShell_activate, (XtPointer)i); ++ (XtCallbackProc)appShell_activate, (XtPointer) (long)i); + XtManageChild(PdMenu); + } + } +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/programs/kxterm/help.c cernlib-2006.dfsg.2/src/packlib/kuip/programs/kxterm/help.c +--- cernlib-2006.dfsg.2~/src/packlib/kuip/programs/kxterm/help.c 1996-03-08 15:33:04.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/programs/kxterm/help.c 2007-12-14 21:41:27.000000000 +0000 +@@ -309,7 +309,7 @@ + int *type; + XmAnyCallbackStruct *call_data; + { +- int t = (int)type; ++ long t = (long)type; + + if (help[t]) + XRaiseWindow(XtDisplay(help[t]), XtWindow(help[t])); +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/programs/kxterm/kxterm.c cernlib-2006.dfsg.2/src/packlib/kuip/programs/kxterm/kxterm.c +--- cernlib-2006.dfsg.2~/src/packlib/kuip/programs/kxterm/kxterm.c 2005-04-18 15:40:49.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/programs/kxterm/kxterm.c 2007-12-14 21:41:27.000000000 +0000 +@@ -1533,7 +1533,7 @@ + XtPointer cbs; + { + Widget text_w; +- int i = (int) item; ++ unsigned long i = (unsigned long) item; + Boolean result = True; + + text_w = get_selection_owner(widget); +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/programs/kxterm/uxxt.c cernlib-2006.dfsg.2/src/packlib/kuip/programs/kxterm/uxxt.c +--- cernlib-2006.dfsg.2~/src/packlib/kuip/programs/kxterm/uxxt.c 1996-03-08 15:33:04.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/programs/kxterm/uxxt.c 2007-12-14 21:41:27.000000000 +0000 +@@ -340,7 +340,7 @@ + { + (void) XDeleteContext( XtDisplay( UxTopLevel ), + (Window) wgt, +- (XContext) client_data ); ++ (XContext) (long)client_data ); + } + + /****************************************************************************** +@@ -385,7 +385,7 @@ + return ( UX_ERROR ); + + XtAddCallback (wgt, XmNdestroyCallback, +- UxDeleteContextCB, (XtPointer) xcontext_id); ++ UxDeleteContextCB, (XtPointer) (long)xcontext_id); + + return ( UX_NO_ERROR ); + } +diff -urNad cernlib-2006.dfsg.2~/src/packlib/zbook/code/zerror.F cernlib-2006.dfsg.2/src/packlib/zbook/code/zerror.F +--- cernlib-2006.dfsg.2~/src/packlib/zbook/code/zerror.F 1996-03-08 12:01:12.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/zbook/code/zerror.F 2007-12-14 21:41:27.000000000 +0000 +@@ -16,6 +16,10 @@ + C ****************************************************************** + C + DIMENSION IZ(1),KEY(1),LAB(6),ID(1) ++#if defined(CERNLIB_QMLXIA64) ++ INTEGER*8 JUMPADR ++#endif ++ + C + C ------------------------------------------------------------------ + C +@@ -24,7 +28,7 @@ + NEWERR = IERR + JZ = IZ(1) + IF(IZ(JZ+19).EQ.0) CALL ZUSER(IZ,NEWERR,KEY,ID) +-#if (defined(CERNLIB_SINGLE)||defined(CERNLIB_DOUBLE)||defined(CERNLIB_UNIVAC)||defined(CERNLIB_PDP10))&&(!defined(CERNLIB_VAX))&&(!defined(CERNLIB_BESM6)) ++#if (defined(CERNLIB_SINGLE)||defined(CERNLIB_DOUBLE)||defined(CERNLIB_UNIVAC)||defined(CERNLIB_PDP10))&&(!defined(CERNLIB_VAX))&&(!defined(CERNLIB_BESM6))&&(!defined(CERNLIB_QMLXIA64)) + IF(IZ(JZ+19).NE.0) CALL ZJUMP(IZ(JZ+19),IZ,NEWERR,KEY,ID) + #endif + #if defined(CERNLIB_VAX) +@@ -33,6 +37,13 @@ + #if defined(CERNLIB_BESM6) + IF(IZ(JZ+19).NE.0) CALL ZJUMP(IZ,NEWERR,KEY,ID,IZ(JZ+19)) + #endif ++#if defined(CERNLIB_QMLXIA64) ++ IF(IZ(JZ+19).NE.0) THEN ++ JUMPADR = IZ(JZ+19) ++ print '(a,z17)','JUMPADR is:', JUMPADR ++ CALL JUMPT4(JUMPADR,IZ,NEWERR,KEY,ID) ++ END IF ++#endif + C + IF (NEWERR.LE.0)RETURN + C +diff -urNad cernlib-2006.dfsg.2~/src/packlib/zbook/code/zjump.c cernlib-2006.dfsg.2/src/packlib/zbook/code/zjump.c +--- cernlib-2006.dfsg.2~/src/packlib/zbook/code/zjump.c 1996-03-08 12:01:12.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/zbook/code/zjump.c 2007-12-14 21:41:27.000000000 +0000 +@@ -7,6 +7,9 @@ + * + */ + #include "zbook/pilot_c.h" ++#if defined(CERNLIB_QMLXIA64) ++static void (*target)(); ++#endif + #if defined(CERNLIB_UNIX) + #if defined(CERNLIB_QX_SC) + zjump_(name,p1,p2,p3,p4) +@@ -18,8 +21,23 @@ + ZJUMP(name,p1,p2,p3,p4) + #endif + char *p1, *p2, *p3, *p4; ++ ++/* LP64 compatibility: ++ name is taken from a Fortran array and therefore its address is 32 bit ++ which has to be converted to a 64 bit address to satisfy void (*) (H. Vogt) */ ++ ++#if defined(CERNLIB_QMLXIA64) ++int *name; ++{ ++ long jadr; ++ jadr = *name; /* convert int to long */ ++ target = (void (*)())jadr; ++ (*target)(p1, p2, p3, p4); ++} ++#else + void (**name)(); + { + (**name)(p1, p2, p3, p4); + } + #endif ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/zbook/code/ztrap.F cernlib-2006.dfsg.2/src/packlib/zbook/code/ztrap.F +--- cernlib-2006.dfsg.2~/src/packlib/zbook/code/ztrap.F 1996-03-08 12:01:13.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/zbook/code/ztrap.F 2007-12-14 21:41:27.000000000 +0000 +@@ -48,8 +48,10 @@ + #if defined(CERNLIB_BESM6) + IZ(JZ+19) = LOCF(IUSER) + #endif +-#if defined(CERNLIB_UNIX) ++#if defined(CERNLIB_UNIX) && !defined(CERNLIB_QMLXIA64) + IZ(JZ+19) = LOCB(IUSER) ++#else ++ IZ(JZ+19) = JUMPAD(IUSER) + #endif + END + #endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/zebra/test/brztest/btest2.F cernlib-2006.dfsg.2/src/packlib/zebra/test/brztest/btest2.F +--- cernlib-2006.dfsg.2~/src/packlib/zebra/test/brztest/btest2.F 1997-09-02 15:16:16.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/zebra/test/brztest/btest2.F 2007-12-14 21:41:27.000000000 +0000 +@@ -29,6 +29,15 @@ + ******************************************************************************** + * + COMMON/CRZT/IXSTOR,IXDIV,IFENCE(2),LEV,LEVIN,BLVECT(30000) ++ ++* LP64 compatibility: ++* For 64-bit pointer systems put local variables referenced by LOCF ++* in a dummy named common block to keep addresses in the program region. ++* see also: packlib/ffread/test/main.F (H. Vogt) ++ ++#if defined(CERNLIB_QMLXIA64) ++ COMMON /TEST64/LBANK ++#endif + DIMENSION LQ(999),IQ(999),Q(999) + EQUIVALENCE (IQ(1),Q(1),LQ(9)),(LQ(1),LEV) + C --- cernlib-2006.dfsg.2.orig/debian/patches/308-use-canonical-cfortran-location.dpatch +++ cernlib-2006.dfsg.2/debian/patches/308-use-canonical-cfortran-location.dpatch @@ -0,0 +1,20 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 308-use-canonical-cfortran-location.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: All code compiled at CERNLIB build-time should look for cfortran.h +## DP: at . + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/graflib/higz/higzcc/tkhigz.c /tmp/dpep.d3syqe/cernlib-2005.05.09/src/graflib/higz/higzcc/tkhigz.c +--- cernlib-2005.05.09~/src/graflib/higz/higzcc/tkhigz.c 1996-02-14 08:10:26.000000000 -0500 ++++ cernlib-2005.05.09/src/graflib/higz/higzcc/tkhigz.c 2005-06-09 13:13:22.079711057 -0400 +@@ -39,7 +39,7 @@ + * PROVIDE MAINTENANCE, SUPPORT, UPDATES, ENHANCEMENTS, OR MODIFICATIONS. + */ + +-#include "higz/cfortran.h" ++#include + #if !defined(VMS) && !defined(_WINDOWS) + #include "higz/tkConfig.h" + #endif --- cernlib-2006.dfsg.2.orig/debian/patches/210-improve-cfortran-header-files.dpatch +++ cernlib-2006.dfsg.2/debian/patches/210-improve-cfortran-header-files.dpatch @@ -0,0 +1,371 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 210-improve-cfortran-header-files.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Protect against multiple inclusion and add explicit dependency on +## DP: cfortran.h to the CERNLIB C headers. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/cfortran/comis.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/comis.h +--- cernlib-2005.05.09~/src/cfortran/comis.h 1999-10-29 07:41:26.000000000 -0400 ++++ cernlib-2005.05.09/src/cfortran/comis.h 2005-06-10 12:51:30.985999665 -0400 +@@ -1,3 +1,11 @@ ++#ifndef _COMIS_H ++#define _COMIS_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + PROTOCCALLSFFUN1(INT,CSADDR,csaddr,STRING) + #define CSADDR(CHFILE) CCALLSFFUN1(CSADDR,csaddr,STRING,CHFILE) + +@@ -30,3 +38,9 @@ + + PROTOCCALLSFSUB2(CSTYPE,cstype,INT,PSTRING) + #define CSTYPE(CADR,CHTYPE) CCALLSFSUB2(CSTYPE,cstype,INT,PSTRING,CADR,CHTYPE) ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _COMIS_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/cspack.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/cspack.h +--- cernlib-2005.05.09~/src/cfortran/cspack.h 1999-10-29 07:42:56.000000000 -0400 ++++ cernlib-2005.05.09/src/cfortran/cspack.h 2005-06-10 12:51:31.013993690 -0400 +@@ -1,5 +1,19 @@ ++#ifndef _CSPACK_H ++#define _CSPACK_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + PROTOCCALLSFSUB2(CZPUTA,czputa,STRING,PINT) + #define CZPUTA(CHMAIL,ISTAT) CCALLSFSUB2(CZPUTA,czputa,STRING,PINT,CHMAIL,ISTAT) + + PROTOCCALLSFSUB2(CZGETA,czgeta,PSTRING,PINT) + #define CZGETA(CHMAIL,ISTAT) CCALLSFSUB2(CZGETA,czgeta,PSTRING,PINT,CHMAIL,ISTAT) ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _CSPACK_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/geant315.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/geant315.h +--- cernlib-2005.05.09~/src/cfortran/geant315.h 1996-05-15 05:24:06.000000000 -0400 ++++ cernlib-2005.05.09/src/cfortran/geant315.h 2005-06-10 12:51:31.080979393 -0400 +@@ -1,3 +1,11 @@ ++#ifndef _GEANT315_H ++#define _GEANT315_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /*------------------------------------------------------------------ + fortran filename : /cern/new/src/cfs/geant315/abbrch.f + ------------------------------------------------------------------*/ +@@ -4797,3 +4805,9 @@ + + #define ZEREGS() CCALLSFSUB0(ZEREGS,zeregs) + ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _GEANT315_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/geant321.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/geant321.h +--- cernlib-2005.05.09~/src/cfortran/geant321.h 1996-05-15 05:24:07.000000000 -0400 ++++ cernlib-2005.05.09/src/cfortran/geant321.h 2005-06-10 12:51:31.148964883 -0400 +@@ -1,3 +1,11 @@ ++#ifndef _GEANT321_H ++#define _GEANT321_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /*------------------------------------------------------------------ + fortran filename : abbrch.f + ------------------------------------------------------------------*/ +@@ -6099,3 +6107,9 @@ + PROTOCCALLSFFUN3(DOUBLE,XSEPRO,xsepro,DOUBLE,DOUBLE,DOUBLE) + #define XSEPRO(A2,A3,A4) CCALLSFFUN3(XSEPRO,xsepro,DOUBLE,DOUBLE,DOUBLE,A2,A3,A4) + ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _GEANT321_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/gen.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/gen.h +--- cernlib-2005.05.09~/src/cfortran/gen.h 2005-06-10 12:51:00.965407158 -0400 ++++ cernlib-2005.05.09/src/cfortran/gen.h 2005-06-10 12:51:31.190955921 -0400 +@@ -1,3 +1,11 @@ ++#ifndef _GEN_H ++#define _GEN_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /* Subroutines/Functions with COMPLEX not supported *** + + #define CBSJA(A1,A2,A3,A4,A5) CCALLSFSUB5(CBSJA,cbsja,COMPLEX,FLOAT,INT,INT,PCOMPLEX,A1,A2,A3,A4,A5) +@@ -1489,3 +1497,9 @@ + + PROTOCCALLSFSUB6(ZEROX,zerox,FLOAT,FLOAT,FLOAT,INT,FLOAT,INT) + #define ZEROX(A1,A2,A3,A4,A5,A6) CCALLSFSUB6(ZEROX,zerox,FLOAT,FLOAT,FLOAT,INT,FLOAT,INT,A1,A2,A3,A4,A5,A6) ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _GEN_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/graflib.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/graflib.h +--- cernlib-2005.05.09~/src/cfortran/graflib.h 1998-01-29 05:49:27.000000000 -0500 ++++ cernlib-2005.05.09/src/cfortran/graflib.h 2005-06-10 12:51:31.220949519 -0400 +@@ -1,2 +1,16 @@ +-#include "higz.h" +-#include "hplot.h" ++#ifndef _GRAFLIB_H ++#define _GRAFLIB_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ ++#include ++#include ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _GRAFLIB_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/jetset74.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/jetset74.h +--- cernlib-2005.05.09~/src/cfortran/jetset74.h 1999-10-29 12:55:45.000000000 -0400 ++++ cernlib-2005.05.09/src/cfortran/jetset74.h 2005-06-10 12:51:31.250943117 -0400 +@@ -1,3 +1,11 @@ ++#ifndef _JETSET74_H ++#define _JETSET74_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + PROTOCCALLSFFUN2(INT,KLU,klu,INT,INT) + #define KLU(A2,A3) CCALLSFFUN2(KLU,klu,INT,INT,A2,A3) + +@@ -327,3 +335,9 @@ + + PROTOCCALLSFSUB11(STRUCTM,structm,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,PDOUBLE) + #define STRUCTM(A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11) CCALLSFSUB11(STRUCTM,structm,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,DOUBLE,PDOUBLE,A1,A2,A3,A4,A5,A6,A7,A8,A9,A10,A11) ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _JETSET74_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/kernlib.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/kernlib.h +--- cernlib-2005.05.09~/src/cfortran/kernlib.h 2000-03-16 11:58:18.000000000 -0500 ++++ cernlib-2005.05.09/src/cfortran/kernlib.h 2005-06-10 12:51:31.291934368 -0400 +@@ -1,3 +1,11 @@ ++#ifndef _KERNLIB_H ++#define _KERNLIB_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + PROTOCCALLSFFUN1(FLOAT,ALOGAM,alogam,FLOAT) + #define ALOGAM(A2) CCALLSFFUN1(ALOGAM,alogam,FLOAT,A2) + +@@ -1512,3 +1520,9 @@ + + PROTOCCALLSFSUB1(WORDSEP,wordsep,STRING) + #define WORDSEP(A1) CCALLSFSUB1(WORDSEP,wordsep,STRING,A1) ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _KERNLIB_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/kuip.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/kuip.h +--- cernlib-2005.05.09~/src/cfortran/kuip.h 2000-10-05 10:27:54.000000000 -0400 ++++ cernlib-2005.05.09/src/cfortran/kuip.h 2005-06-10 12:51:31.319928394 -0400 +@@ -1,3 +1,11 @@ ++#ifndef _KUIP_H ++#define _KUIP_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + PROTOCCALLSFSUB3(KUCLOS,kuclos,INT,STRING,INT) + #define KUCLOS(A1,A2,A3) CCALLSFSUB3(KUCLOS,kuclos,INT,STRING,INT,A1,A2,A3) + +@@ -6,3 +14,9 @@ + + PROTOCCALLSFSUB0(KUWHAG,kuwhag) + #define KUWHAG() CCALLSFSUB0(KUWHAG,kuwhag) ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _KUIP_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/lapack.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/lapack.h +--- cernlib-2005.05.09~/src/cfortran/lapack.h 2000-06-23 06:13:58.000000000 -0400 ++++ cernlib-2005.05.09/src/cfortran/lapack.h 2005-06-10 12:51:31.348922205 -0400 +@@ -1,2 +1,16 @@ ++#ifndef _LAPACK_H ++#define _LAPACK_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + PROTOCCALLSFSUB11(DGELS,dgels,STRING,INT,INT,INT,DOUBLEV,INT,DOUBLEV,INT,DOUBLEV,INT,PINT) + #define DGELS(TRANS,M,N,NRHS,A,LDA,B,LDB,WORK,LWORK,INFO) CCALLSFSUB11(DGELS,dgels,STRING,INT,INT,INT,DOUBLEV,INT,DOUBLEV,INT,DOUBLEV,INT,PINT,TRANS,M,N,NRHS,A,LDA,B,LDB,WORK,LWORK,INFO) ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _LAPACK_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/lepto62.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/lepto62.h +--- cernlib-2005.05.09~/src/cfortran/lepto62.h 1999-10-29 12:55:45.000000000 -0400 ++++ cernlib-2005.05.09/src/cfortran/lepto62.h 2005-06-10 12:51:31.378915804 -0400 +@@ -1,3 +1,11 @@ ++#ifndef _LEPTO62_H ++#define _LEPTO62_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + PROTOCCALLSFFUN2(FLOAT,DCROSS,dcross,FLOAT,FLOAT) + #define DCROSS(A2,A3) CCALLSFFUN2(DCROSS,dcross,FLOAT,FLOAT,A2,A3) + +@@ -174,3 +182,9 @@ + + PROTOCCALLSFSUB0(RIWIBD,riwibd) + #define RIWIBD() CCALLSFSUB0(RIWIBD,riwibd) ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _LEPTO62_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/minuit.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/minuit.h +--- cernlib-2005.05.09~/src/cfortran/minuit.h 1999-10-27 11:30:23.000000000 -0400 ++++ cernlib-2005.05.09/src/cfortran/minuit.h 2005-06-10 12:51:31.407909615 -0400 +@@ -1,3 +1,11 @@ ++#ifndef _MINUIT_H ++#define _MINUIT_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + /* + * Interface to minuit using cfortran.h + * +@@ -190,3 +198,9 @@ + + PROTOCCALLSFSUB0(STAND,stand) + #define STAND() CCALLSFSUB0(STAND,stand) ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _MINUIT_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/packlib.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/packlib.h +--- cernlib-2005.05.09~/src/cfortran/packlib.h 1998-01-29 11:17:45.000000000 -0500 ++++ cernlib-2005.05.09/src/cfortran/packlib.h 2005-06-10 12:51:31.436903427 -0400 +@@ -1,4 +1,18 @@ +-#include "hbook.h" +-#include "minuit.h" +-#include "kuip.h" +-#include "zebra.h" ++#ifndef _PACKLIB_H ++#define _PACKLIB_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ ++#include ++#include ++#include ++#include ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _PACKLIB_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/paw.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/paw.h +--- cernlib-2005.05.09~/src/cfortran/paw.h 2000-10-05 10:27:55.000000000 -0400 ++++ cernlib-2005.05.09/src/cfortran/paw.h 2005-06-10 12:51:31.464897452 -0400 +@@ -1,6 +1,20 @@ ++#ifndef _PAW_H ++#define _PAW_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + PROTOCCALLSFSUB2(PAW,paw,INT,INT) + #define PAW(A1,A2) CCALLSFSUB2(PAW,paw,INT,INT,A1,A2) + + PROTOCCALLSFSUB0(PAEXIT,paexit) + #define PAEXIT() CCALLSFSUB0(PAEXIT,paexit) + ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _PAW_H */ +diff -urNad cernlib-2005.05.09/src/cfortran/zebra.h /tmp/dpep.Al0dBQ/cernlib-2005.05.09/src/cfortran/zebra.h +--- cernlib-2005.05.09~/src/cfortran/zebra.h 1999-10-29 07:35:47.000000000 -0400 ++++ cernlib-2005.05.09/src/cfortran/zebra.h 2005-06-10 12:51:31.496890624 -0400 +@@ -1,5 +1,19 @@ ++#ifndef _ZEBRA_H ++#define _ZEBRA_H ++#include ++ ++#ifdef __cplusplus ++extern "C" { ++#endif ++ + PROTOCCALLSFSUB1(MZEBRA,mzebra,INT) + #define MZEBRA(A1) CCALLSFSUB1(MZEBRA,mzebra,INT,A1) + + PROTOCCALLSFSUB2(MZPAW,mzpaw,INT,STRING) + #define MZPAW(A1,A2) CCALLSFSUB2(MZPAW,mzpaw,INT,STRING,A1,A2) ++ ++#ifdef __cplusplus ++} /* extern "C" */ ++#endif ++ ++#endif /* #ifndef _ZEBRA_H */ --- cernlib-2006.dfsg.2.orig/debian/patches/600-use-host.def-config-file.dpatch +++ cernlib-2006.dfsg.2/debian/patches/600-use-host.def-config-file.dpatch @@ -0,0 +1,22 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 600-use-host.def-config-file.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Use host.def for Debian-specific CERNLIB build options. + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/config/site.def cernlib-2005.05.09.dfsg/src/config/site.def +--- cernlib-2005.05.09.dfsg~/src/config/site.def 2002-04-26 10:46:04.000000000 -0400 ++++ cernlib-2005.05.09.dfsg/src/config/site.def 2006-07-05 10:25:00.691451379 -0400 +@@ -71,9 +71,9 @@ + + #define HasFortran YES + +-/* ++ + #include +-*/ ++ + + /* + #ifndef HasGcc2 --- cernlib-2006.dfsg.2.orig/debian/patches/603-trim-build-output.dpatch +++ cernlib-2006.dfsg.2/debian/patches/603-trim-build-output.dpatch @@ -0,0 +1,85 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 603-trim-build-output.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Trim compiler flags from build output to reduce size of logs on buildds. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/config/fortran.rules /tmp/dpep.NZAyHH/cernlib-2005.05.09/src/config/fortran.rules +--- cernlib-2005.05.09~/src/config/fortran.rules 1997-05-30 12:25:18.000000000 -0400 ++++ cernlib-2005.05.09/src/config/fortran.rules 2005-06-09 16:36:43.413985115 -0400 +@@ -137,6 +137,22 @@ + #endif + + /* ++ * PrettyPrintCmd - Execute the compiler command, but remove all -flags ++ * from the printout, in order to reduce the size of build logs. ++ * -- Kevin McCarty, for Debian. */ ++#ifndef PrettyPrintCmd ++#define PrettyPrintCmd(command)@( set -e ; \ @@\ ++ PRETTYCMD="`echo 'command' | sed -e 's/Null$qParameter//g' \ @@\ ++ -e 's/[[:space:]]-[^[:space:]]*/ /g' \ @@\ ++ -e 's/[[:space:]][^[:space:]]*\.o[[:space:]]/ /g' \ @@\ ++ -e 's/[[:space:]][^[:space:]]*\.o$$//g' \ @@\ ++ -e 's,/[^[:space:]]*/,,g' \ @@\ ++ -e 's/[[:space:]][[:space:]]*/ /g'`" ; \ @@\ ++ echo $$PRETTYCMD ; EXIT="" ; \ @@\ ++ command > /dev/null || EXIT=$$? ; [ -n "$$EXIT" ] && \ @@\ ++ echo Failing c$qommand: 'command' || true; exit $$EXIT ) ++#endif ++/* + * FortranLinkRule - link a fortran program + */ + #ifndef FortranLinkRule +@@ -291,15 +307,15 @@ + #ifndef ObjectFortranCompile + #if FortranDoesCpp + #ifdef SGIArchitecture +-#define ObjectFortranCompile(options) RemoveFile($@) @@\ ++#define ObjectFortranCompile(options) @RemoveFile($@) @@\ + sed -e "/^#[ ]*else/s/else/elif 1/" $< > s_$( /dev/null @@\ + @ sed 's=$*\.o=& $@=g' $@.tmp > $@ @@\ + @ RemoveFiles($@.tmp $@.tmp.bak) + #endif --- cernlib-2006.dfsg.2.orig/debian/patches/605-move-kuesvr-to-usrlib.dpatch +++ cernlib-2006.dfsg.2/debian/patches/605-move-kuesvr-to-usrlib.dpatch @@ -0,0 +1,82 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 605-move-kuesvr-to-usrlib.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Move kuesvr into /usr/lib/libpacklib1-gfortran in conformance +## DP: with Policy 8.1. + +@DPATCH@ +diff -urNad --exclude=CVS --exclude=.svn ./src/packlib/kuip/code_kuip/kedit.c /tmp/dpep-work.Ee7d3Y/cernlib-2005.05.09/src/packlib/kuip/code_kuip/kedit.c +--- ./src/packlib/kuip/code_kuip/kedit.c 2005-07-15 20:50:03.364033336 +0000 ++++ cernlib-2005.05.09/src/packlib/kuip/code_kuip/kedit.c 2005-07-15 21:02:07.386883015 +0000 +@@ -184,8 +184,12 @@ + } + } + close( fid ); +- ++ ++#if defined(CERNLIB_DEBIAN) ++ line = strdup( "/usr/lib/libpacklib1-gfortran/kuesvr -p " ); ++#else + line = strdup( "kuesvr -p " ); ++#endif + line = mstricat( line, getpid() ); + line = mstr2cat( line, " -t ", editor_tmp ); + line = mstr4cat( line, " -c ", ku_path(), " -e '", +@@ -679,7 +683,11 @@ + if( strchr( kc_value.set_host_editor, '&' ) != NULL ) { + /* must be a workstation and kuesvr in search path to use server */ + kc_flags.use_server = ++#if defined(CERNLIB_DEBIAN) ++ (getenv( "DISPLAY" ) != NULL); /* for Debian, kuesvr not in $PATH */ ++#else + (getenv( "DISPLAY" ) != NULL) && (ku_qexe( "kuesvr" ) != NULL); ++#endif + + /* vi must be wrapped into xterm */ + if( kc_flags.use_server +diff -urNad --exclude=CVS --exclude=.svn ./src/packlib/kuip/code_kuip/kiinit.F /tmp/dpep-work.Ee7d3Y/cernlib-2005.05.09/src/packlib/kuip/code_kuip/kiinit.F +--- ./src/packlib/kuip/code_kuip/kiinit.F 1997-10-23 16:53:58.000000000 +0000 ++++ cernlib-2005.05.09/src/packlib/kuip/code_kuip/kiinit.F 2005-07-15 21:01:19.252193868 +0000 +@@ -272,17 +272,29 @@ + IF (EDITOR(LE-1:LE) .EQ. 'vi') THEN + IF (EDITOR(1:1) .EQ. '/' .OR. EDITOR(1:2) .EQ. 'vi') THEN + SERVER = .FALSE. ++#if defined(CERNLIB_DEBIAN) ++C For Debian, kuesvr is in /usr/lib/libpacklib1-gfortran/ ++C so don't test for it in PATH ++ ELSE ++ SERVER = .TRUE. ++#else + ELSEIF (KUQEXE('kuesvr')) THEN + SERVER = .TRUE. + ELSE + SERVER = .FALSE. ++#endif + ENDIF ++#if defined(CERNLIB_DEBIAN) ++ ELSE ++ SERVER = .TRUE. ++#else + #ifndef CERNLIB_WINNT + ELSEIF (KUQEXE('kuesvr')) THEN + SERVER = .TRUE. + #endif + ELSE + SERVER = .FALSE. ++#endif + ENDIF + #endif + NSVFIL = 0 +diff -urNad --exclude=CVS --exclude=.svn ./src/packlib/kuip/code_kuip/kuipcdf.cdf /tmp/dpep-work.Ee7d3Y/cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuipcdf.cdf +--- ./src/packlib/kuip/code_kuip/kuipcdf.cdf 2005-07-15 20:50:03.365033123 +0000 ++++ cernlib-2005.05.09/src/packlib/kuip/code_kuip/kuipcdf.cdf 2005-07-15 21:03:13.955630301 +0000 +@@ -832,6 +832,8 @@ + can continue to receive commands. + In order to do that the following conditions must be fulfilled: + - The KUIP edit server 'kuesvr' must be found in the search path. ++ (This is not necessary in Debian, where it is installed into the ++ /usr/lib/libpacklib1-gfortran directory.) + - The editor command set by HOST_EDITOR must end with an ampersand ('&'). + - The environment variable 'DISPLAY' must be set. + . --- cernlib-2006.dfsg.2.orig/debian/patches/702-fix-packlib-mathlib-circular-mess.sh.dpatch +++ cernlib-2006.dfsg.2/debian/patches/702-fix-packlib-mathlib-circular-mess.sh.dpatch @@ -0,0 +1,38 @@ +#!/bin/sh + +## DP: Shell script to move around various files between packlib and mathlib. +## DP: The goal is to have mathlib depend upon packlib but not vice versa. +## DP: (Originally these two libs were a mess of dependencies on each other.) + +set -e +cd src + +case "$1" in + -patch) + # Hdiff depends upon a bunch of mathlib files; move it into + # mathlib. + mkdir mathlib/hbook + mv packlib/hbook/hdiff mathlib/hbook/ + cp -r packlib/hbook/hbook mathlib/hbook/ + + # Meanwhile, other packlib files depend upon these mathlib + # files which are easily moved: + mkdir packlib/hbook/d + mv mathlib/gen/d/rgmlt*.F packlib/hbook/d/ + mv mathlib/gen/n packlib/hbook/ + cp -r mathlib/gen/gen packlib/hbook/ + ;; + + -unpatch) + rm -r packlib/hbook/gen + mv packlib/hbook/n mathlib/gen/ + mv packlib/hbook/d/rgmlt*.F mathlib/gen/d/ + rm -r packlib/hbook/d + + mv mathlib/hbook/hdiff packlib/hbook/ + rm -r mathlib/hbook + ;; + + *) exit 1 ;; +esac + --- cernlib-2006.dfsg.2.orig/debian/patches/302-scripts-comply-with-FHS.dpatch.in +++ cernlib-2006.dfsg.2/debian/patches/302-scripts-comply-with-FHS.dpatch.in @@ -0,0 +1,42 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 302-scripts-comply-with-FHS.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Put data files under @DATADIR@ and assume $CERN is @PREFIX@ by default +## DP: in scripts. (These values are filled in from add-ons/Makefile.) +## DP: Also some other improvements. + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/graflib/dzdoc/dzedit/dzedit.script cernlib-2005.05.09.dfsg/src/graflib/dzdoc/dzedit/dzedit.script +--- cernlib-2005.05.09.dfsg~/src/graflib/dzdoc/dzedit/dzedit.script 1996-05-05 11:16:16.000000000 -0400 ++++ cernlib-2005.05.09.dfsg/src/graflib/dzdoc/dzedit/dzedit.script 2005-12-13 10:07:57.712733227 -0500 +@@ -13,9 +13,9 @@ + + SHOPT="d:h:v:" + #SEQ,GETOPTD. +- drv="X11" ; hst="0" +- [ -z "$CERN" ] && CERN="/cern" +- [ -z "$CERN_LEVEL" ] && ver="pro" || ver="$CERN_LEVEL" ++ drv="X11" ; hst="" ++ [ -z "$CERN" ] && CERN="@PREFIX@" ++ [ -z "$CERN_LEVEL" ] && ver="." || ver="$CERN_LEVEL" + + while [ $# -gt 0 ] + do case $1 in +@@ -35,12 +35,12 @@ + # inlib $GKS_INLIB + GDIR=$CERN/gks/$ver/bin + fi +- if [ "$drv" = "X11" ] ; then +- DISPLAY="$hst:0" ; export DISPLAY ++ if [ "$drv" = "X11" -a -n "$hst" ] ; then ++ DISPLAY="$hst:0.0" ; export DISPLAY + fi +- if [ "$ver" != "pro" ] ; then ++ if [ "$ver" != "." ] ; then + echo + echo " Calling $ver version of dzedit-$drv..." + echo + fi +- $GDIR/dze$drv $* ++exec $GDIR/dze$drv "$@" --- cernlib-2006.dfsg.2.orig/debian/patches/126-fix-patchy-compile-flags.dpatch +++ cernlib-2006.dfsg.2/debian/patches/126-fix-patchy-compile-flags.dpatch @@ -0,0 +1,101 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 126-fix-patchy-compile-flags.dpatch by Patrice Dumas +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix various compile flags, etc. in patchy build directory. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/patchy/Imakefile cernlib-2006.dfsg.2/src/patchy/Imakefile +--- cernlib-2006.dfsg.2~/src/patchy/Imakefile 2008-02-26 13:15:48.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/patchy/Imakefile 2008-02-26 13:16:06.000000000 -0800 +@@ -54,19 +54,9 @@ + + $(P5LIB): $(LDIR)patchy.car $(LDIR)p5lib.cra p5lib.libmake fcasplit Makefile + ypatchy - p5lib p5lib TTY .go +- fcasplit p5lib.f +- RemoveFile(p5lib.f) ++ ./fcasplit p5lib.f "-c $(FORTRANOPTIONS) $(FDEBUGFLAGS)" "-c $(CDEBUGFLAGS) $(CCOPTIONS) $(ALLDEFINES)" "" "$(FC)" "$(CC)" + cat p5lib.libmake >> p5lib.mkfca +-#if defined(CERNLIB_GFORTRAN) +- sed -e 's;f77;gfortran;' -e 's;g77;gfortran;' -e 's;-Nx800;;' \ +- -e 's;-Nc200;;' -e 's;+ppu;;' p5lib.mkfca > p5lib.mkfca.mod +- sed -e 's;f77;gfortran;' -e 's;g77;gfortran;' -e 's;-Nx800;;' \ +- -e 's;-Nc200;;' -e 's;+ppu;;' p5lib.shfca > p5lib.shfca.mod +- mv p5lib.mkfca.mod p5lib.mkfca +- mv p5lib.shfca.mod p5lib.shfca +-#endif + $(MAKE) -f p5lib.mkfca $@ +- RemoveFile(p5lib.mkfca) + RemoveFile(p5lib.shfca) + + p5lib.libmake: Makefile +@@ -78,7 +68,7 @@ + echo " rm -f \$$(subst .o,.f,\$$(ROUTINES))" >> $@ + + fcasplit: fcasplit.o +- $(F77) $< -o $@ ++ $(FCLINK) $< -o $@ $(FCLDOPTIONS) + + $(LDIR)%.cra: %.cra $(LDIR)yexpand + PLINAME=$(PLINAME);export PLINAME;$(LDIR)yexpand $< $@ +@@ -87,22 +77,22 @@ + @ ln -s $< $@ + + %.f: $(LDIR)%.cra $(LDIR)patchy.car +- ypatchy - $@ $< TTY .go +- ++ ypatchy - :$@ :$< TTY .go ++ + .f.o: + $(FC) -c $(FORTRANOPTIONS) $(FDEBUGFLAGS) $< + + $(LDIR)yexpand: yexpand.script +- @cp $< $@ +- @chmod +x $@ ++ cp $< $@ ++ chmod +x $@ + + /* Links to patchy 4.15 */ + YMODULES=ycompar yedit yfrceta yindex yindexb ylist ypatchy \ + ysearch yshift ytobcd ytobin ytoceta + +-P4LINKS: $(foreach yp,$(YMODULES),$(CERN_BINDIR)$(yp)) ++P4LINKS: $(foreach yp,$(YMODULES),$(CERN_BINDIR)/$(yp)) + +-$(foreach yp,$(YMODULES),$(CERN_BINDIR)$(yp)): ++$(foreach yp,$(YMODULES),$(CERN_BINDIR)/$(yp)): + cd $(dir $@); \ @@\ + if [ -f ../../patchy/4.15/bin/$(notdir $@) ] ; then \ @@\ + ln -s ../../patchy/4.15/bin/$(notdir $@) $(notdir $@); \ @@\ +diff -urNad cernlib-2006.dfsg.2~/src/patchy/fcasplit.F cernlib-2006.dfsg.2/src/patchy/fcasplit.F +--- cernlib-2006.dfsg.2~/src/patchy/fcasplit.F 1999-11-30 09:37:25.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/patchy/fcasplit.F 2008-02-26 13:16:06.000000000 -0800 +@@ -343,8 +343,8 @@ + PARAMETER (CHIDA = ';DECK I' ) + PARAMETER (CHOVER= 'UNKNOWN') + +- PARAMETER (CHPOF = '-c -O -fno-automatic') +- PARAMETER (CHPOC = '-c -O2 -m486') ++ PARAMETER (CHPOF = '-c -g -O2 -fno-automatic') ++ PARAMETER (CHPOC = '-c -g -O2') + PARAMETER (CHPOA = ' ') + + PARAMETER (CHEXFOR = '.f') +@@ -507,7 +507,7 @@ + #endif + + PARAMETER (MLMKLN=100) +- PARAMETER (MXLENG=128, MXMKLN=64) ++ PARAMETER (MXLENG=1024, MXMKLN=128) + CHARACTER CHHOLD*(MXLENG) + CHARACTER CHOPT(7)*(MXLENG) + DIMENSION NCHOPT(7) +@@ -532,7 +532,7 @@ + DIMENSION LXCBUF(MXCBUF) + CHARACTER*80 CHCBUF(MXCBUF) + +- CHARACTER CHLINE*80, CHNAME*80, CHTEXT*511 ++ CHARACTER CHLINE*80, CHNAME*80, CHTEXT*3000 + CHARACTER CHUSE*1 + + PARAMETER (NKEYS=11) --- cernlib-2006.dfsg.2.orig/debian/patches/118-rename-mathlib-common-blocks.dpatch +++ cernlib-2006.dfsg.2/debian/patches/118-rename-mathlib-common-blocks.dpatch @@ -0,0 +1,16 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 118-rename-mathlib-common-blocks.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Rename badly named common blocks to work around #374978. + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/mathlib/gen/d/d510si.inc cernlib-2005.05.09.dfsg/src/mathlib/gen/d/d510si.inc +--- cernlib-2005.05.09.dfsg~/src/mathlib/gen/d/d510si.inc 1996-04-01 10:02:21.000000000 -0500 ++++ cernlib-2005.05.09.dfsg/src/mathlib/gen/d/d510si.inc 2006-06-28 10:15:11.526165542 -0400 +@@ -10,4 +10,4 @@ + * d510si.inc + * + COMMON/D510SI/Z(2485),G(100),DA(100),ENDFLG,NA,INDFLG(5) +- COMMON/DF/DF(100),/X/X(10) ++ COMMON/D510DF/DF(100),/D510X/X(10) --- cernlib-2006.dfsg.2.orig/debian/patches/602-debianize-kuip-helper-apps.dpatch +++ cernlib-2006.dfsg.2/debian/patches/602-debianize-kuip-helper-apps.dpatch @@ -0,0 +1,88 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 602-debianize-kuip-helper-apps.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Use Debian-specific programs for some KUIP helper apps. + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kuip/code_kuip/kedit.c cernlib-2005.05.09.dfsg/src/packlib/kuip/code_kuip/kedit.c +--- cernlib-2005.05.09.dfsg~/src/packlib/kuip/code_kuip/kedit.c 2005-04-18 11:40:45.000000000 -0400 ++++ cernlib-2005.05.09.dfsg/src/packlib/kuip/code_kuip/kedit.c 2006-06-23 09:52:21.028176549 -0400 +@@ -686,7 +686,11 @@ + && ( strncmp( kc_value.set_host_editor, "vi ", 3 ) == 0 + || strcmp( kc_value.set_host_editor, "vi&" ) == 0 ) ) { + char *p = kc_value.set_host_editor; ++# ifdef CERNLIB_DEBIAN ++ kc_value.set_host_editor = str2dup( "x-terminal-emulator -e ", p ); ++# else + kc_value.set_host_editor = str2dup( "xterm -e ", p ); ++# endif + free( p ); + } + } +diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kuip/code_kuip/kuinit.c cernlib-2005.05.09.dfsg/src/packlib/kuip/code_kuip/kuinit.c +--- cernlib-2005.05.09.dfsg~/src/packlib/kuip/code_kuip/kuinit.c 2006-06-23 09:52:13.177852158 -0400 ++++ cernlib-2005.05.09.dfsg/src/packlib/kuip/code_kuip/kuinit.c 2006-06-23 09:52:21.028176549 -0400 +@@ -220,7 +220,11 @@ + host_editor = "edit"; + # endif + # else ++# ifdef CERNLIB_DEBIAN ++ host_editor = "sensible-editor"; ++# else + host_editor = "vi"; ++# endif + # endif + # ifdef APOLLO + if( kc_window.is_a_pad ) +@@ -274,7 +278,11 @@ + #ifdef vms + host_pager = "TYPE/PAGE"; + #else ++# ifdef CERNLIB_DEBIAN ++ host_pager = "sensible-pager"; ++# else + host_pager = kc_value.set_host_editor; ++# endif + #endif + } + line = str3dup( "/KUIP/SET_SHOW/HOST_PAGER '", host_pager, "'" ); +diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kuip/code_kuip/kuipcdf.cdf cernlib-2005.05.09.dfsg/src/packlib/kuip/code_kuip/kuipcdf.cdf +--- cernlib-2005.05.09.dfsg~/src/packlib/kuip/code_kuip/kuipcdf.cdf 2006-06-23 09:52:13.178851945 -0400 ++++ cernlib-2005.05.09.dfsg/src/packlib/kuip/code_kuip/kuipcdf.cdf 2006-06-23 09:52:21.029176335 -0400 +@@ -849,7 +849,8 @@ + . + The startup value can be defined by the environment variable 'EDITOR'. + Otherwise it is set to a system dependent default: +-'DM' (Apollo), 'EDT' (VMS), 'XEDIT' (VM/CMS), 'vi' (Unix). ++'DM' (Apollo), 'EDT' (VMS), 'XEDIT' (VM/CMS), 'vi' (Unix), ++'sensible-editor' (Debian). + >Action kxhosteditor%C + + +@@ -878,7 +879,7 @@ + 'KUIPPAGER' or 'PAGER'. + If neither of them is defined the value set by the HOST_EDITOR command + is used. +-On VAX/VMS the startup value is 'TYPE/PAGE'. ++On VAX/VMS the startup value is 'TYPE/PAGE'; on Debian it is 'sensible-pager'. + >Action kxhostpager%C + + +diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kuip/code_motif/kuwham.c cernlib-2005.05.09.dfsg/src/packlib/kuip/code_motif/kuwham.c +--- cernlib-2005.05.09.dfsg~/src/packlib/kuip/code_motif/kuwham.c 1996-03-08 10:33:07.000000000 -0500 ++++ cernlib-2005.05.09.dfsg/src/packlib/kuip/code_motif/kuwham.c 2006-06-23 09:55:37.082363554 -0400 +@@ -54,8 +54,13 @@ + kc_flags.echo_prompt = str0dup( name ); + kc_flags.style = KmSTYLE_XM; + ku_exel( "/KUIP/HELP -NOEDIT" ); /* display helptexts in Motif windows */ ++#ifdef CERNLIB_DEBIAN ++ ku_exel( "/KUIP/SET_SHOW/HOST_EDITOR 'x-terminal-emulator -e sensible-editor &'" ); ++ ku_exel( "/KUIP/SET_SHOW/HOST_PAGER sensible-pager"); ++#else + ku_exel( "/KUIP/SET_SHOW/HOST_EDITOR 'xterm -e view &'" ); + ku_exel( "/KUIP/SET_SHOW/HOST_PAGER more"); ++#endif + + /* set Motif specific functions */ + kjmpaddr.disp_panel_C = km_display_cmdpan; --- cernlib-2006.dfsg.2.orig/debian/patches/125-fix-PLINAME-creation.dpatch +++ cernlib-2006.dfsg.2/debian/patches/125-fix-PLINAME-creation.dpatch @@ -0,0 +1,29 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 125-fix-PLINAME-creation.dpatch by Kevin B. McCarty +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix creation of PLINAME Make variable so that -DDEBIAN_VERSION=... +## DP: will not get incorporated into it (confusing patchy). + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/patchy/Imakefile cernlib-2006.dfsg.2/src/patchy/Imakefile +--- cernlib-2006.dfsg.2~/src/patchy/Imakefile 2006-09-06 07:36:54.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/patchy/Imakefile 2008-02-26 13:13:47.000000000 -0800 +@@ -49,7 +49,7 @@ + comma:= , + empty:= + space:= $(empty) $(empty) +-PLINAME=$(subst $(space),$(comma),$(strip $(subst -DCERNLIB_,,CernlibSystem))) ++PLINAME=$(subst $(space),$(comma),$(strip $(subst -DCERNLIB_,,$(filter -DCERNLIB_%,CernlibSystem)))) + LDIR=$(TOP)$(CURRENT_DIR)/ + + $(P5LIB): $(LDIR)patchy.car $(LDIR)p5lib.cra p5lib.libmake fcasplit Makefile +@@ -114,7 +114,7 @@ + + #ifdef CERNLIB_VAXVMS + +-PLINAME=$(subst $(space),$(comma),$(strip $(subst -DCERNLIB_,,CernlibSystem))) ++PLINAME=$(subst $(space),$(comma),$(strip $(subst -DCERNLIB_,,$(filter -DCERNLIB_%,CernlibSystem)))) + LDIR=$(TOP)$(CURRENT_DIR)] + + %.for: %.cra patchy.car yyexpand.com --- cernlib-2006.dfsg.2.orig/debian/patches/302-scripts-comply-with-FHS.dpatch +++ cernlib-2006.dfsg.2/debian/patches/302-scripts-comply-with-FHS.dpatch @@ -0,0 +1,42 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 302-scripts-comply-with-FHS.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Put data files under /usr/share and assume $CERN is /usr by default +## DP: in scripts. (These values are filled in from add-ons/Makefile.) +## DP: Also some other improvements. + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/graflib/dzdoc/dzedit/dzedit.script cernlib-2005.05.09.dfsg/src/graflib/dzdoc/dzedit/dzedit.script +--- cernlib-2005.05.09.dfsg~/src/graflib/dzdoc/dzedit/dzedit.script 1996-05-05 11:16:16.000000000 -0400 ++++ cernlib-2005.05.09.dfsg/src/graflib/dzdoc/dzedit/dzedit.script 2005-12-13 10:07:57.712733227 -0500 +@@ -13,9 +13,9 @@ + + SHOPT="d:h:v:" + #SEQ,GETOPTD. +- drv="X11" ; hst="0" +- [ -z "$CERN" ] && CERN="/cern" +- [ -z "$CERN_LEVEL" ] && ver="pro" || ver="$CERN_LEVEL" ++ drv="X11" ; hst="" ++ [ -z "$CERN" ] && CERN="/usr" ++ [ -z "$CERN_LEVEL" ] && ver="." || ver="$CERN_LEVEL" + + while [ $# -gt 0 ] + do case $1 in +@@ -35,12 +35,12 @@ + # inlib $GKS_INLIB + GDIR=$CERN/gks/$ver/bin + fi +- if [ "$drv" = "X11" ] ; then +- DISPLAY="$hst:0" ; export DISPLAY ++ if [ "$drv" = "X11" -a -n "$hst" ] ; then ++ DISPLAY="$hst:0.0" ; export DISPLAY + fi +- if [ "$ver" != "pro" ] ; then ++ if [ "$ver" != "." ] ; then + echo + echo " Calling $ver version of dzedit-$drv..." + echo + fi +- $GDIR/dze$drv $* ++exec $GDIR/dze$drv "$@" --- cernlib-2006.dfsg.2.orig/debian/patches/214-fix-kernnum-funcs-on-64-bit.dpatch +++ cernlib-2006.dfsg.2/debian/patches/214-fix-kernnum-funcs-on-64-bit.dpatch @@ -0,0 +1,766 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 214-fix-kernnum-funcs-on-64-bit.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Attempt to fix kernnum use of pointer differences on 64-bit arches. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/cxj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/cxj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/cxj.inc 1996-02-15 17:48:50.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/cxj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JX = (IADDR(X2) - IADDR(X)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JX = IPTRDIFF(X2, X) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/cyj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/cyj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/cyj.inc 1996-02-15 17:48:50.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/cyj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JY = (IADDR(Y2) - IADDR(Y)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JY = IPTRDIFF(Y2, Y) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/czj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/czj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/czj.inc 1996-02-15 17:48:50.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/czj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JZ = (IADDR(Z2) - IADDR(Z)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JZ = IPTRDIFF(Z2, Z) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/dxj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/dxj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/dxj.inc 1996-02-15 17:48:50.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/dxj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JX = (IADDR(X2) - IADDR(X)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JX = IPTRDIFF(X2, X) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/dyj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/dyj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/dyj.inc 1996-02-15 17:48:50.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/dyj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JY = (IADDR(Y2) - IADDR(Y)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JY = IPTRDIFF(Y2, Y) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/dzj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/dzj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/dzj.inc 1996-02-15 17:48:50.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/dzj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JZ = (IADDR(Z2) - IADDR(Z)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JZ = IPTRDIFF(Z2, Z) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/rxj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/rxj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/rxj.inc 1996-02-15 17:48:50.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/rxj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JX = (IADDR(X2) - IADDR(X)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ JX = IPTRDIFF(X2, X) / 4 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/ryj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/ryj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/ryj.inc 1996-02-15 17:48:50.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/ryj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JY = (IADDR(Y2) - IADDR(Y)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ JY = IPTRDIFF(Y2, Y) / 4 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/rzj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/rzj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f002fort/rzj.inc 1996-02-15 17:48:50.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f002fort/rzj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JZ = (IADDR(Z2) - IADDR(Z)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ JZ = IPTRDIFF(Z2, Z) / 4 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/cdi.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/cdi.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/cdi.inc 1996-02-15 17:48:54.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/cdi.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + ID = (IADDR(D2) - IADDR(D)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ ID = IPTRDIFF(D2, D) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/cujk.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/cujk.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/cujk.inc 1996-02-15 17:48:54.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/cujk.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -25,3 +25,7 @@ + JU = (IADDR(U12) - IADDR(U)) / 8 + KU = (IADDR(U22) - IADDR(U)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JU = IPTRDIFF(U12, U) / 8 ++ KU = IPTRDIFF(U22, U) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/cxi.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/cxi.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/cxi.inc 1996-02-15 17:48:54.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/cxi.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + IX = (IADDR(X2) - IADDR(X)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ IX = IPTRDIFF(X2, X) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/cxij.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/cxij.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/cxij.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/cxij.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -25,3 +25,7 @@ + IX = (IADDR(X21) - IADDR(X)) / 8 + JX = (IADDR(X12) - IADDR(X)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ IX = IPTRDIFF(X21, X) / 8 ++ JX = IPTRDIFF(X12, X) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/cyij.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/cyij.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/cyij.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/cyij.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -25,3 +25,7 @@ + IY = (IADDR(Y21) - IADDR(Y)) / 8 + JY = (IADDR(Y12) - IADDR(Y)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ IY = IPTRDIFF(Y21, Y) / 8 ++ JY = IPTRDIFF(Y12, Y) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/cyj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/cyj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/cyj.inc 1996-02-15 17:48:56.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/cyj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JY = (IADDR(Y2) - IADDR(Y)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JY = IPTRDIFF(Y2, Y) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/czi.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/czi.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/czi.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/czi.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + IZ = (IADDR(Z2) - IADDR(Z)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ IZ = IPTRDIFF(Z2, Z) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/czij.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/czij.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/czij.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/czij.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -25,3 +25,7 @@ + IZ = (IADDR(Z21) - IADDR(Z)) / 8 + JZ = (IADDR(Z12) - IADDR(Z)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ IZ = IPTRDIFF(Z21, Z) / 8 ++ JZ = IPTRDIFF(Z12, Z) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/czj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/czj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/czj.inc 1996-02-15 17:48:56.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/czj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JZ = (IADDR(Z2) - IADDR(Z)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JZ = IPTRDIFF(Z2, Z) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/ddi.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/ddi.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/ddi.inc 1996-02-15 17:48:54.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/ddi.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + ID = (IADDR(D2) - IADDR(D)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ ID = IPTRDIFF(D2, D) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dujk.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dujk.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dujk.inc 1996-02-15 17:48:54.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dujk.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -25,3 +25,7 @@ + JU = (IADDR(U12) - IADDR(U)) / 8 + KU = (IADDR(U22) - IADDR(U)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JU = IPTRDIFF(U12, U) / 8 ++ KU = IPTRDIFF(U22, U) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dxi.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dxi.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dxi.inc 1996-02-15 17:48:54.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dxi.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + IX = (IADDR(X2) - IADDR(X)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ IX = IPTRDIFF(X2, X) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dxij.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dxij.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dxij.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dxij.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -25,3 +25,7 @@ + IX = (IADDR(X21) - IADDR(X)) / 8 + JX = (IADDR(X12) - IADDR(X)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ IX = IPTRDIFF(X21, X) / 8 ++ JX = IPTRDIFF(X12, X) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dyij.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dyij.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dyij.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dyij.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -25,3 +25,7 @@ + IY = (IADDR(Y21) - IADDR(Y)) / 8 + JY = (IADDR(Y12) - IADDR(Y)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ IY = IPTRDIFF(Y21, Y) / 8 ++ JY = IPTRDIFF(Y12, Y) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dyj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dyj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dyj.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dyj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JY = (IADDR(Y2) - IADDR(Y)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JY = IPTRDIFF(Y2, Y) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dzi.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dzi.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dzi.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dzi.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + IZ = (IADDR(Z2) - IADDR(Z)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ IZ = IPTRDIFF(Z2, Z) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dzij.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dzij.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dzij.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dzij.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -25,3 +25,7 @@ + IZ = (IADDR(Z21) - IADDR(Z)) / 8 + JZ = (IADDR(Z12) - IADDR(Z)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ IZ = IPTRDIFF(Z21, Z) / 8 ++ JZ = IPTRDIFF(Z12, Z) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dzj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dzj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/dzj.inc 1996-02-15 17:48:56.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/dzj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JZ = (IADDR(Z2) - IADDR(Z)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JZ = IPTRDIFF(Z2, Z) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rdi.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rdi.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rdi.inc 1996-02-15 17:48:54.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rdi.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + ID = (IADDR(D2) - IADDR(D)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ ID = IPTRDIFF(D2, D) / 4 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rujk.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rujk.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rujk.inc 1996-02-15 17:48:54.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rujk.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -25,3 +25,7 @@ + JU = (IADDR(U12) - IADDR(U)) / 4 + KU = (IADDR(U22) - IADDR(U)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ JU = IPTRDIFF(U12, U) / 4 ++ KU = IPTRDIFF(U22, U) / 4 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rxi.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rxi.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rxi.inc 1996-02-15 17:48:54.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rxi.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + IX = (IADDR(X2) - IADDR(X)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ IX = IPTRDIFF(X2, X) / 4 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rxij.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rxij.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rxij.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rxij.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -25,3 +25,7 @@ + IX = (IADDR(X21) - IADDR(X)) / 4 + JX = (IADDR(X12) - IADDR(X)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ IX = IPTRDIFF(X21, X) / 4 ++ JX = IPTRDIFF(X12, X) / 4 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/ryij.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/ryij.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/ryij.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/ryij.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -25,3 +25,7 @@ + IY = (IADDR(Y21) - IADDR(Y)) / 4 + JY = (IADDR(Y12) - IADDR(Y)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ IY = IPTRDIFF(Y21, Y) / 4 ++ JY = IPTRDIFF(Y12, Y) / 4 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/ryj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/ryj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/ryj.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/ryj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JY = (IADDR(Y2) - IADDR(Y)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ JY = IPTRDIFF(Y2, Y) / 4 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rzi.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rzi.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rzi.inc 1996-02-15 17:48:54.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rzi.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + IZ = (IADDR(Z2) - IADDR(Z)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ IZ = IPTRDIFF(Z2, Z) / 4 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rzij.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rzij.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rzij.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rzij.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -25,3 +25,7 @@ + IZ = (IADDR(Z21) - IADDR(Z)) / 4 + JZ = (IADDR(Z12) - IADDR(Z)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ IZ = IPTRDIFF(Z21, Z) / 4 ++ JZ = IPTRDIFF(Z12, Z) / 4 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rzj.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rzj.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f003fort/rzj.inc 1996-02-15 17:48:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f003fort/rzj.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -21,3 +21,6 @@ + #if defined(CERNLIB_NUMIB1) + JZ = (IADDR(Z2) - IADDR(Z)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ JZ = IPTRDIFF(Z2, Z) / 4 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f004fort/dlocf.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f004fort/dlocf.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f004fort/dlocf.inc 1996-02-15 17:49:00.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f004fort/dlocf.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -57,3 +57,12 @@ + IZ = (IADDR(Z21(1)) - LOCZ) / 8 + LZ = (IADDR(Z12(1)) - LOCZ) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ IF(MIN0(M,N,K) .LE. 0) RETURN ++ IX = IPTRDIFF(X21(1), X(1)) / 8 ++ JX = IPTRDIFF(X12(1), X(1)) / 8 ++ JY = IPTRDIFF(Y21(1), Y(1)) / 8 ++ LY = IPTRDIFF(Y12(1), Y(1)) / 8 ++ IZ = IPTRDIFF(Z21(1), Z(1)) / 8 ++ LZ = IPTRDIFF(Z12(1), Z(1)) / 8 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f004fort/rlocf.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f004fort/rlocf.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f004fort/rlocf.inc 1996-02-15 17:49:00.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f004fort/rlocf.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -57,3 +57,12 @@ + IZ = (IADDR(Z21(1)) - LOCZ) / 4 + LZ = (IADDR(Z12(1)) - LOCZ) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ IF(MIN0(M,N,K) .LE. 0) RETURN ++ IX = IPTRDIFF(X21(1), X(1)) / 4 ++ JX = IPTRDIFF(X12(1), X(1)) / 4 ++ JY = IPTRDIFF(Y21(1), Y(1)) / 4 ++ LY = IPTRDIFF(Y12(1), Y(1)) / 4 ++ IZ = IPTRDIFF(Z21(1), Z(1)) / 4 ++ LZ = IPTRDIFF(Z12(1), Z(1)) / 4 ++#endif +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f004fort/zisxy.inc cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f004fort/zisxy.inc +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/f004fort/zisxy.inc 1996-02-15 17:49:01.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/f004fort/zisxy.inc 2008-01-02 20:02:31.000000000 +0000 +@@ -9,9 +9,15 @@ + * + * zisxy.inc + * ++#ifdef CERNLIB_NUM64 ++ IF(IPTRSAME(Z(1), X(1)) .EQ. 1) GOTO 30 ++ IF(IPTRSAME(Z(1), Y(1)) .EQ. 1) GOTO 40 ++ IF(IPTRSAME(X(1), Y(1)) .EQ. 1) GOTO 20 ++#else + IF(LOCZ .EQ. LOCX) GOTO 30 + IF(LOCZ .EQ. LOCY) GOTO 40 + IF(LOCX .EQ. LOCY) GOTO 20 ++#endif + 10 LY1L = 1 + LZ1L = 1 + DO 13 L = 1, K +@@ -68,7 +74,11 @@ + LZII = LZII + IZ + LZ + 24 CONTINUE + RETURN ++#ifdef CERNLIB_NUM64 ++ 30 IF(IPTRSAME(X(1), Y(1)) .EQ. 1) GOTO 50 ++#else + 30 IF(LOCX .EQ. LOCY) GOTO 50 ++#endif + LXI1 = 1 + DO 34 I = 1, M + LY1L = 1 +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/kernnum/pilot.h cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/kernnum/pilot.h +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/kernnum/pilot.h 1997-02-04 17:36:48.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/kernnum/pilot.h 2008-01-02 20:02:31.000000000 +0000 +@@ -19,7 +19,7 @@ + #endif + #endif + +-#if defined(CERNLIB_LINUX)||defined(CERNLIB_MSDOS) && !defined(CERNLIB_WINNT) ++#if defined(CERNLIB_LINUX) && !defined(CERNLIB_QMLXIA64) || defined(CERNLIB_MSDOS) && !defined(CERNLIB_WINNT) + #ifndef CERNLIB_NUMIB2 + #define CERNLIB_NUMIB2 + #endif +@@ -31,6 +31,18 @@ + #endif + #endif + ++#if defined(CERNLIB_LINUX) && defined(CERNLIB_QMLXIA64) ++#ifndef CERNLIB_NUM64 ++#define CERNLIB_NUM64 ++#endif ++#ifdef CERNLIB_NUMD38 ++#undef CERNLIB_NUMD38 ++#endif ++#ifndef CERNLIB_NUMD279 ++#define CERNLIB_NUMD279 ++#endif ++#endif ++ + #if defined(CERNLIB_VAXVMS) + #ifndef CERNLIB_NUMDE + #define CERNLIB_NUMDE +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/kernnumt/pilot.h cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/kernnumt/pilot.h +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/kernnumt/pilot.h 1997-02-04 17:36:54.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/kernnumt/pilot.h 2008-01-02 20:02:31.000000000 +0000 +@@ -44,6 +44,11 @@ + #ifndef CERNLIB_NUMLN + #define CERNLIB_NUMLN + #endif ++#if defined(CERNLIB_QMLXIA64) ++#ifndef CERNLIB_NUM64 ++#define CERNLIB_NUM64 ++#endif ++#endif + #endif + + #if defined(CERNLIB_MSDOS) +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/numchk0/cvdist.F cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/numchk0/cvdist.F +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/numchk0/cvdist.F 1996-02-15 17:48:41.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/numchk0/cvdist.F 2008-01-02 20:02:31.000000000 +0000 +@@ -14,7 +14,7 @@ + IF(N .LE. 0) RETURN + CVDIST = DISTF(X(1),Y(1)) + IF(N .LE. 1) RETURN +-#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE)) ++#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE))&&(!defined(CERNLIB_NUM64)) + JX = (LOCF(X2) - LOCF(X)) / 2 + JY = (LOCF(Y2) - LOCF(Y)) / 2 + #endif +@@ -26,6 +26,10 @@ + JX = (%LOC(X2) - %LOC(X)) / 8 + JY = (%LOC(Y2) - %LOC(Y)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JX = IPTRDIFF(X2, X) / 8 ++ JY = IPTRDIFF(Y2, Y) / 8 ++#endif + LX = 1 + LY = 1 + DO 10 J = 2, N +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/numchk0/dvdist.F cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/numchk0/dvdist.F +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/numchk0/dvdist.F 1996-02-15 17:48:41.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/numchk0/dvdist.F 2008-01-02 20:02:31.000000000 +0000 +@@ -14,7 +14,7 @@ + IF(N .LE. 0) RETURN + DVDIST = DISTF(X(1),Y(1)) + IF(N .LE. 1) RETURN +-#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE)) ++#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE))&&(!defined(CERNLIB_NUM64)) + JX = (LOCF(X2) - LOCF(X)) / 2 + JY = (LOCF(Y2) - LOCF(Y)) / 2 + #endif +@@ -26,6 +26,10 @@ + JX = (%LOC(X2) - %LOC(X)) / 8 + JY = (%LOC(Y2) - %LOC(Y)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JX = IPTRDIFF(X2, X) / 8 ++ JY = IPTRDIFF(Y2, Y) / 8 ++#endif + LX = 1 + LY = 1 + DO 10 J = 2, N +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/numchk0/rvdist.F cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/numchk0/rvdist.F +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/numchk0/rvdist.F 1996-02-15 17:48:41.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/numchk0/rvdist.F 2008-01-02 20:02:31.000000000 +0000 +@@ -14,7 +14,7 @@ + IF(N .LE. 0) RETURN + RVDIST = DISTF(X(1),Y(1)) + IF(N .LE. 1) RETURN +-#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE)) ++#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE))&&(!defined(CERNLIB_NUM64)) + JX = LOCF(X2) - LOCF(X) + JY = LOCF(Y2) - LOCF(Y) + #endif +@@ -26,6 +26,10 @@ + JX = (%LOC(X2) - %LOC(X)) / 4 + JY = (%LOC(Y2) - %LOC(Y)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ JX = IPTRDIFF(X2, X) / 4 ++ JY = IPTRDIFF(Y2, Y) / 4 ++#endif + LX = 1 + LY = 1 + DO 10 J = 2, N +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/numchk3/check3.F cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/numchk3/check3.F +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/numchk3/check3.F 1996-03-21 17:16:07.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/numchk3/check3.F 2008-01-02 20:02:31.000000000 +0000 +@@ -343,7 +343,7 @@ + I = 1 + IF(N .EQ. 1) RETURN + LXJ = 1 +-#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE)) ++#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE))&&(!defined(CERNLIB_NUM64)) + JX = LOCF(X2) - LOCF(X) + #endif + #if defined(CERNLIB_NUMUC)||defined(CERNLIB_NUMCR) +@@ -352,6 +352,9 @@ + #if defined(CERNLIB_NUMDE) + JX = (%LOC(X2) - %LOC(X)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ JX = IPTRDIFF(X2, X) / 4 ++#endif + DO 10 J = 2, N + LXJ = LXJ + JX + T = ABSF(X(LXJ)) +@@ -373,7 +376,7 @@ + I = 1 + IF(N .EQ. 1) RETURN + LXJ = 1 +-#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE)) ++#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE))&&(!defined(CERNLIB_NUM64)) + JX = (LOCF(X2) - LOCF(X)) / 2 + #endif + #if defined(CERNLIB_NUMUC)||defined(CERNLIB_NUMCR) +@@ -382,6 +385,9 @@ + #if defined(CERNLIB_NUMDE) + JX = (%LOC(X2) - %LOC(X)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JX = IPTRDIFF(X2, X) / 8 ++#endif + DO 10 J = 2, N + LXJ = LXJ + JX + T = ABSF(X(LXJ)) +@@ -403,7 +409,7 @@ + I = 1 + IF(N .EQ. 1) RETURN + LXJ = 1 +-#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE)) ++#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE))&&(!defined(CERNLIB_NUM64)) + JX = (LOCF(X2) - LOCF(X)) / 2 + #endif + #if defined(CERNLIB_NUMUC)||defined(CERNLIB_NUMCR) +@@ -412,6 +418,9 @@ + #if defined(CERNLIB_NUMDE) + JX = (%LOC(X2) - %LOC(X)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JX = IPTRDIFF(X2, X) / 8 ++#endif + DO 10 J = 2, N + LXJ = LXJ + JX + T = ABSF(X(LXJ)) +@@ -441,7 +450,7 @@ + RVSUMA = 0. + IF(N .LE. 0) RETURN + LXJ = 1 +-#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE)) ++#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE))&&(!defined(CERNLIB_NUM64)) + JX = LOCF(X2) - LOCF(X) + #endif + #if defined(CERNLIB_NUMUC)||defined(CERNLIB_NUMCR) +@@ -450,6 +459,9 @@ + #if defined(CERNLIB_NUMDE) + JX = (%LOC(X2) - %LOC(X)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ JX = IPTRDIFF(X2, X) / 4 ++#endif + DO 10 J = 1, N + RVSUMA = RVSUMA + ABS(X(LXJ)) + LXJ = LXJ + JX +@@ -461,7 +473,7 @@ + DVSUMA = 0. + IF(N .LE. 0) RETURN + LXJ = 1 +-#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE)) ++#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE))&&(!defined(CERNLIB_NUM64)) + JX = (LOCF(X2) - LOCF(X)) / 2 + #endif + #if defined(CERNLIB_NUMUC)||defined(CERNLIB_NUMCR) +@@ -470,6 +482,9 @@ + #if defined(CERNLIB_NUMDE) + JX = (%LOC(X2) - %LOC(X)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JX = IPTRDIFF(X2, X) / 8 ++#endif + DO 10 J = 1, N + DVSUMA = DVSUMA + ABS(SNGL(X(LXJ))) + LXJ = LXJ + JX +@@ -481,7 +496,7 @@ + CVSUMA = 0. + IF(N .LE. 0) RETURN + LXJ = 1 +-#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE)) ++#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE))&&(!defined(CERNLIB_NUM64)) + JX = (LOCF(X2) - LOCF(X)) / 2 + #endif + #if defined(CERNLIB_NUMUC)||defined(CERNLIB_NUMCR) +@@ -490,6 +505,9 @@ + #if defined(CERNLIB_NUMDE) + JX = (%LOC(X2) - %LOC(X)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JX = IPTRDIFF(X2, X) / 8 ++#endif + DO 10 J = 1, N + CVSUMA = CVSUMA + AMAX1(ABS(REAL(X(LXJ))),ABS(AIMAG(X(LXJ)))) + LXJ = LXJ + JX +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/numchk3/f002ch.F cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/numchk3/f002ch.F +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/numchk3/f002ch.F 1996-03-21 17:16:08.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/numchk3/f002ch.F 2008-01-02 20:02:31.000000000 +0000 +@@ -329,7 +329,7 @@ + IF(.NOT. OK) WRITE(IOUNIT,1000) N, IFAIL + IF(N .LE. 0) RETURN + KFAIL = IRANF(1,N) +-#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE)) ++#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE))&&(!defined(CERNLIB_NUM64)) + JY = LOCF(Y2) - LOCF(Y) + #endif + #if defined(CERNLIB_NUMUC)||defined(CERNLIB_NUMCR) +@@ -338,6 +338,9 @@ + #if defined(CERNLIB_NUMDE) + JY = (%LOC(Y2) - %LOC(Y)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ JY = IPTRDIFF(Y2, Y) / 4 ++#endif + LY = (KFAIL - 1)*JY + 1 + S = Y(LY) + Y(LY) = ZERO +@@ -366,7 +369,7 @@ + IF(.NOT. OK) WRITE(IOUNIT,1000) N, IFAIL + IF(N .LE. 0) RETURN + KFAIL = IRANF(1,N) +-#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE)) ++#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE))&&(!defined(CERNLIB_NUM64)) + JY = (LOCF(Y2) - LOCF(Y)) / 2 + #endif + #if defined(CERNLIB_NUMUC)||defined(CERNLIB_NUMCR) +@@ -375,6 +378,9 @@ + #if defined(CERNLIB_NUMDE) + JY = (%LOC(Y2) - %LOC(Y)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JY = IPTRDIFF(Y2, Y) / 8 ++#endif + LY = (KFAIL - 1)*JY + 1 + S = Y(LY) + Y(LY) = ZERO +@@ -403,7 +409,7 @@ + IF(.NOT. OK) WRITE(IOUNIT,1000) N, IFAIL + IF(N .LE. 0) RETURN + KFAIL = IRANF(1,N) +-#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE)) ++#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE))&&(!defined(CERNLIB_NUM64)) + JY = (LOCF(Y2) - LOCF(Y)) / 2 + #endif + #if defined(CERNLIB_NUMUC)||defined(CERNLIB_NUMCR) +@@ -412,6 +418,9 @@ + #if defined(CERNLIB_NUMDE) + JY = (%LOC(Y2) - %LOC(Y)) / 8 + #endif ++#if defined(CERNLIB_NUM64) ++ JY = IPTRDIFF(Y2, Y) / 8 ++#endif + LY = (KFAIL - 1)*JY + 1 + S = Y(LY) + Y(LY) = ZERO +@@ -1139,7 +1148,7 @@ + XS2 = ZERO + XM2 = ZERO + IF(N .LE. 0) RETURN +-#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE)) ++#if (!defined(CERNLIB_NUMUC))&&(!defined(CERNLIB_NUMCR))&&(!defined(CERNLIB_NUMDE))&&(!defined(CERNLIB_NUM64)) + JX = LOCF(X2) - LOCF(X) + #endif + #if defined(CERNLIB_NUMUC)||defined(CERNLIB_NUMCR) +@@ -1148,6 +1157,9 @@ + #if defined(CERNLIB_NUMDE) + JX = (%LOC(X2) - %LOC(X)) / 4 + #endif ++#if defined(CERNLIB_NUM64) ++ JX = IPTRDIFF(X2, X) / 4 ++#endif + LX = 1 + S1 = ZERO + S2 = ZERO +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/numchk3/f011ch.F cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/numchk3/f011ch.F +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kernnum/test/numchk3/f011ch.F 1996-03-21 17:16:10.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kernnum/test/numchk3/f011ch.F 2008-01-02 20:03:24.000000000 +0000 +@@ -251,7 +251,8 @@ + + 3X,7H IDIM =,I5, 3X, 4H E =,1PE12.3) + END + SUBROUTINE TSING(N,A,R,OK,FACT,SETEX,RABS,VXCH) +- REAL A(*), R(*), DET(2) ++ REAL A(*), R(*) ++ DOUBLE PRECISION DET(2) + LOGICAL OK, OKDET + #include "kernnumt/sysdat.inc" + #include "ch3dat.inc" --- cernlib-2006.dfsg.2.orig/debian/patches/704-patch-code_kuip-higzcc-Imakefiles.dpatch +++ cernlib-2006.dfsg.2/debian/patches/704-patch-code_kuip-higzcc-Imakefiles.dpatch @@ -0,0 +1,31 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 704-patch-code_kuip-higzcc-Imakefiles.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Patch Imakefiles after moving kuwhag.c from packlib to grafX11. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/graflib/higz/higzcc/Imakefile /tmp/dpep.IDWarm/cernlib-2005.05.09/src/graflib/higz/higzcc/Imakefile +--- cernlib-2005.05.09~/src/graflib/higz/higzcc/Imakefile 1998-11-16 04:36:53.000000000 -0500 ++++ cernlib-2005.05.09/src/graflib/higz/higzcc/Imakefile 2005-06-13 09:45:37.637201936 -0400 +@@ -1,7 +1,7 @@ + DoIncludePackage(higz) + #include "pilot.h" + +-SRCS_C= igvers.c ++SRCS_C= igvers.c kuwhag.c /* <-- moved here from packlib/kuip/code_kuip */ + + #if defined(CERNLIB_FALCO) && !defined(CERNLIB_VAX) + SRCS_C := $(SRCS_C) falint.c +diff -urNad cernlib-2005.05.09/src/packlib/kuip/code_kuip/Imakefile /tmp/dpep.IDWarm/cernlib-2005.05.09/src/packlib/kuip/code_kuip/Imakefile +--- cernlib-2005.05.09~/src/packlib/kuip/code_kuip/Imakefile 2005-06-13 09:44:00.536042728 -0400 ++++ cernlib-2005.05.09/src/packlib/kuip/code_kuip/Imakefile 2005-06-13 09:44:41.448261682 -0400 +@@ -2,7 +2,7 @@ + + SRCS_C= getline.c kalias.c kbrow.c kedit.c kexec.c khash.c kicon.c \ @@\ + kienbr.c kipiaf.c kkern.c kmacro.c kmath.c kmenu.c kmisc.c \ @@\ +- kmodel.c kmterm.c kuinit.c kutrue.c kuvers.c kuwhag.c \ @@\ ++ kmodel.c kmterm.c kuinit.c kutrue.c kuvers.c \ @@\ + kuwhat.c kvect.c \ @@\ + kmutil.c + /* ^^ moved here from code_motif. --Kevin McCarty */ --- cernlib-2006.dfsg.2.orig/debian/patches/604-put-pawserv-logs-in-own-directory.dpatch +++ cernlib-2006.dfsg.2/debian/patches/604-put-pawserv-logs-in-own-directory.dpatch @@ -0,0 +1,31 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 604-put-pawserv-logs-in-own-directory.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Put Pawserv/Zserv log files into their own directory, /var/log/pawserv. +## DP: (We assume it already exists as it's shipped in the .deb file.) + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/packlib/cspack/programs/zs/zs.F /tmp/dpep.7plSC5/cernlib-2005.05.09/src/packlib/cspack/programs/zs/zs.F +--- cernlib-2005.05.09~/src/packlib/cspack/programs/zs/zs.F 2005-04-18 11:39:27.000000000 -0400 ++++ cernlib-2005.05.09/src/packlib/cspack/programs/zs/zs.F 2005-06-09 11:59:59.897651273 -0400 +@@ -62,7 +62,7 @@ + #if !defined(CERNLIB_IBM)||defined(CERNLIB_TCPSOCK) + INTEGER STATUS + INTEGER SSETUP,SCLOSE +- CHARACTER*26 CHFILE ++ CHARACTER*34 CHFILE + #endif + #if defined(CERNLIB_IBM) + CHARACTER*80 ARGS +@@ -91,8 +91,8 @@ + CHFILE=' ' + CALL DATIME(ND,NT) + WRITE(CHFILE,1000)ND,NT +- 1000 FORMAT('/var/log/zs',I6,I4,'.log') +- DO 1 I=11,23 ++ 1000 FORMAT('/var/log/pawserv/zs',I6,I4,'.log') ++ DO 1 I=19,31 + IF(CHFILE(I:I).EQ.' ')CHFILE(I:I)='0' + 1 CONTINUE + OPEN(UNIT=LUNCZ,FILE=CHFILE,STATUS='UNKNOWN',IOSTAT=ISTAT) --- cernlib-2006.dfsg.2.orig/debian/patches/213-fix-test-suite-build.dpatch +++ cernlib-2006.dfsg.2/debian/patches/213-fix-test-suite-build.dpatch @@ -0,0 +1,211 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 213-fix-test-suite-build.dpatch by Patrice Dumas +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix build of test-suite for tests during package build. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/bvsl/test/Imakefile cernlib-2006.dfsg.2/src/mathlib/bvsl/test/Imakefile +--- cernlib-2006.dfsg.2~/src/mathlib/bvsl/test/Imakefile 1996-03-21 17:19:55.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/mathlib/bvsl/test/Imakefile 2007-12-14 00:14:11.000000000 +0000 +@@ -6,7 +6,7 @@ + + DefinePackageLibrary(bvsltst) + +-CernlibFortranProgramTarget(bvslt,tsbvsl.o,$(PACKAGE_LIB),$(PACKAGE_LIB),mathlib kernlib) ++CernlibFortranProgramTarget(bvslt,tsbvsl.o,libbvsltst.a,libbvsltst.a,mathlib kernlib) + + TestTarget(bvslt,NullParameter,NullParameter) + +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/tests/Imakefile cernlib-2006.dfsg.2/src/mathlib/gen/tests/Imakefile +--- cernlib-2006.dfsg.2~/src/mathlib/gen/tests/Imakefile 2005-03-24 16:40:10.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/tests/Imakefile 2007-12-14 00:14:11.000000000 +0000 +@@ -63,7 +63,7 @@ + + DefinePackageLibrary(gentest) + +-CernlibFortranProgramTarget(gent,main.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(gent,main.o,libgentest.a,libgentest.a,packlib mathlib) + + + TestTarget(gent,NullParameter,NullParameter) +diff -urNad cernlib-2006.dfsg.2~/src/packlib/epio/tests/ptest1/Imakefile cernlib-2006.dfsg.2/src/packlib/epio/tests/ptest1/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/epio/tests/ptest1/Imakefile 1996-03-08 15:21:45.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/epio/tests/ptest1/Imakefile 2007-12-14 00:14:11.000000000 +0000 +@@ -11,9 +11,9 @@ + + DefinePackageLibrary(NullParameter) + +-CernlibFortranProgramTarget(ptest1_16,$(OBJS_16) $(OBJS_CO),$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(ptest1_16,$(OBJS_16) $(OBJS_CO),NullParameter,NullParameter,kernlib packlib) + +-CernlibFortranProgramTarget(ptest1_32,$(OBJS_32) $(OBJS_CO),$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(ptest1_32,$(OBJS_32) $(OBJS_CO),NullParameter,NullParameter,kernlib packlib) + + TestTarget(ptest1_32,NullParameter,NullParameter) + +diff -urNad cernlib-2006.dfsg.2~/src/packlib/epio/tests/ptest2/Imakefile cernlib-2006.dfsg.2/src/packlib/epio/tests/ptest2/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/epio/tests/ptest2/Imakefile 1996-03-08 15:21:45.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/epio/tests/ptest2/Imakefile 2007-12-14 00:14:11.000000000 +0000 +@@ -10,9 +10,9 @@ + SpecialFortranObjectRule(main_32,main,NullParameter,-DCERNLIB_PH32BIT) + SpecialFortranObjectRule(test2_32,test2,NullParameter,-DCERNLIB_PH32BIT) + +-CernlibFortranProgramTarget(ptest2_16,$(OBJS_16) $(OBJS_CO),$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(ptest2_16,$(OBJS_16) $(OBJS_CO),NullParameter,NullParameter,kernlib packlib) + +-CernlibFortranProgramTarget(ptest2_32,$(OBJS_32) $(OBJS_CO),$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(ptest2_32,$(OBJS_32) $(OBJS_CO),NullParameter,NullParameter,kernlib packlib) + + TestTarget(ptest2_32,NullParameter,NullParameter) + +diff -urNad cernlib-2006.dfsg.2~/src/packlib/epio/tests/ptest3/Imakefile cernlib-2006.dfsg.2/src/packlib/epio/tests/ptest3/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/epio/tests/ptest3/Imakefile 1996-03-08 15:21:46.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/epio/tests/ptest3/Imakefile 2007-12-14 00:14:11.000000000 +0000 +@@ -12,9 +12,9 @@ + + DefinePackageLibrary(NullParameter) + +-CernlibFortranProgramTarget(ptest3_16,$(OBJS_16) $(OBJS_CO),$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(ptest3_16,$(OBJS_16) $(OBJS_CO),NullParameter,NullParameter,kernlib packlib) + +-CernlibFortranProgramTarget(ptest3_32,$(OBJS_32) $(OBJS_CO),$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(ptest3_32,$(OBJS_32) $(OBJS_CO),NullParameter,NullParameter,kernlib packlib) + + TestTarget(ptest3_32,NullParameter,NullParameter) + +diff -urNad cernlib-2006.dfsg.2~/src/packlib/ffread/test/Imakefile cernlib-2006.dfsg.2/src/packlib/ffread/test/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/ffread/test/Imakefile 1996-10-02 15:36:27.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/ffread/test/Imakefile 2007-12-14 00:14:11.000000000 +0000 +@@ -2,7 +2,7 @@ + + DefinePackageLibrary(NullParameter) + +-CernlibFortranProgramTarget(ffread,$(OBJS),$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(ffread,$(OBJS),NullParameter,NullParameter,kernlib packlib) + + TestTarget(ffread,NullParameter,test.input) + +diff -urNad cernlib-2006.dfsg.2~/src/packlib/hbook/examples/Imakefile cernlib-2006.dfsg.2/src/packlib/hbook/examples/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/hbook/examples/Imakefile 1996-02-20 15:46:21.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/hbook/examples/Imakefile 2007-12-14 00:14:11.000000000 +0000 +@@ -5,11 +5,11 @@ + + DefinePackageLibrary(hbtlib) + +-CernlibFortranProgramTarget(hbtest,hexam.o,$(PACKAGE_LIB),$(PACKAGE_LIB),NullParameter) ++CernlibFortranProgramTarget(hbtest,hexam.o,libhbtlib.a,libhbtlib.a,packlib) + +-CernlibFortranProgramTarget(hbdiff,htdiffb.o,$(PACKAGE_LIB),$(PACKAGE_LIB),mathlib) ++CernlibFortranProgramTarget(hbdiff,htdiffb.o,libhbtlib.a,libhbtlib.a,mathlib) + +-CernlibFortranProgramTarget(hmerge,hmerg.o hmergin.o,$(PACKAGE_LIB),$(PACKAGE_LIB),mathlib) ++CernlibFortranProgramTarget(hmerge,hmerg.o hmergin.o,libhbtlib.a,libhbtlib.a,mathlib) + + TestTarget(hbtest,NullParameter,NullParameter) + TestTarget(hbdiff,NullParameter,NullParameter) +diff -urNad cernlib-2006.dfsg.2~/src/packlib/hbook/tests/Imakefile cernlib-2006.dfsg.2/src/packlib/hbook/tests/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/hbook/tests/Imakefile 1996-02-20 15:46:41.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/hbook/tests/Imakefile 2007-12-14 00:14:11.000000000 +0000 +@@ -1,6 +1,6 @@ + #if 0 + /* this is not yet understood */ +-CernlibFortranProgramTarget(hbtest,test_fp.o,$(PACKAGE_LIB),$(PACKAGE_LIB),NullParameter) ++CernlibFortranProgramTarget(hbtest,test_fp.o,NullParameter,NullParameter,packlib) + + + TestTarget(hbtest) +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kapack/test/Imakefile cernlib-2006.dfsg.2/src/packlib/kapack/test/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/kapack/test/Imakefile 1996-12-02 15:29:51.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kapack/test/Imakefile 2007-12-14 00:14:11.000000000 +0000 +@@ -1,7 +1,7 @@ + + DefinePackageLibrary(NullParameter) + +-CernlibFortranProgramTarget(kapack,test1.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(kapack,test1.o,NullParameter,NullParameter,kernlib packlib) + + /* the kapack test, or better kamake asks for a file name only in unix. + * on VMS, the file is opened on unit 11, resulting in for011.dat +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/examples/Imakefile cernlib-2006.dfsg.2/src/packlib/kuip/examples/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/kuip/examples/Imakefile 1996-10-02 15:37:00.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/examples/Imakefile 2007-12-14 00:14:11.000000000 +0000 +@@ -5,7 +5,7 @@ + + DefinePackageLibrary(NullParameter) + +-CernlibFortranProgramTarget(ktest,$(OBJS),$(PACKAGE_LIB),$(PACKAGE_LIB),graflib packlib kernlib) ++CernlibFortranProgramTarget(ktest,$(OBJS),NullParameter,NullParameter,graflib packlib kernlib) + + TestTarget(ktest,NullParameter,ktest.inp) + +diff -urNad cernlib-2006.dfsg.2~/src/packlib/minuit/examples/Imakefile cernlib-2006.dfsg.2/src/packlib/minuit/examples/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/minuit/examples/Imakefile 1997-10-23 17:04:15.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/minuit/examples/Imakefile 2007-12-14 00:14:11.000000000 +0000 +@@ -9,6 +9,6 @@ + FDEBUGFLAGS=NoOpFortranDebugFlags + #endif + +-CernlibFortranProgramTarget(minuit,$(OBJS),$(PACKAGE_LIB),$(PACKAGE_LIB),NullParameter) ++CernlibFortranProgramTarget(minuit,$(OBJS),NullParameter,NullParameter,packlib) + + TestTarget(minuit,NullParameter,NullParameter) +diff -urNad cernlib-2006.dfsg.2~/src/packlib/zbook/test/Imakefile cernlib-2006.dfsg.2/src/packlib/zbook/test/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/zbook/test/Imakefile 1996-03-12 08:13:30.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/zbook/test/Imakefile 2007-12-14 00:14:11.000000000 +0000 +@@ -5,6 +5,6 @@ + + SubdirLibraryTarget(zbookt,NullParameter) + +-CernlibFortranProgramTarget(zexam,zexam.o,$(PACKAGE_LIB),$(PACKAGE_LIB),packlib) ++CernlibFortranProgramTarget(zexam,zexam.o,libzbookt.a,libzbookt.a,packlib) + + TestTarget(zexam,NullParameter,NullParameter) +diff -urNad cernlib-2006.dfsg.2~/src/packlib/zebra/test/Imakefile cernlib-2006.dfsg.2/src/packlib/zebra/test/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/zebra/test/Imakefile 1997-08-29 13:33:57.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/zebra/test/Imakefile 2007-12-14 00:14:11.000000000 +0000 +@@ -41,27 +41,27 @@ + + testrz: zebrz1 zebrz2 zebrz3 + +-CernlibFortranProgramTarget(zebmz1,zebmz1.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(zebmz1,zebmz1.o,libzebtlib.a,libzebtlib.a,kernlib packlib) + +-CernlibFortranProgramTarget(zebfz1,zebfz1.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) +-CernlibFortranProgramTarget(zebfz2,zebfz2.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) +-CernlibFortranProgramTarget(zebfz3,zebfz3.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) +-CernlibFortranProgramTarget(zebfz4,zebfz4.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) +-CernlibFortranProgramTarget(zebfz5,zebfz5.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) +-CernlibFortranProgramTarget(zebfz6,zebfz6.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) +-CernlibFortranProgramTarget(zebfz7,zebfz7.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) +-CernlibFortranProgramTarget(zebfz8,zebfz8.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) +-CernlibFortranProgramTarget(zebfz9,zebfz9.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(zebfz1,zebfz1.o,libzebtlib.a,libzebtlib.a,kernlib packlib) ++CernlibFortranProgramTarget(zebfz2,zebfz2.o,libzebtlib.a,libzebtlib.a,kernlib packlib) ++CernlibFortranProgramTarget(zebfz3,zebfz3.o,libzebtlib.a,libzebtlib.a,kernlib packlib) ++CernlibFortranProgramTarget(zebfz4,zebfz4.o,libzebtlib.a,libzebtlib.a,kernlib packlib) ++CernlibFortranProgramTarget(zebfz5,zebfz5.o,libzebtlib.a,libzebtlib.a,kernlib packlib) ++CernlibFortranProgramTarget(zebfz6,zebfz6.o,libzebtlib.a,libzebtlib.a,kernlib packlib) ++CernlibFortranProgramTarget(zebfz7,zebfz7.o,libzebtlib.a,libzebtlib.a,kernlib packlib) ++CernlibFortranProgramTarget(zebfz8,zebfz8.o,libzebtlib.a,libzebtlib.a,kernlib packlib) ++CernlibFortranProgramTarget(zebfz9,zebfz9.o,libzebtlib.a,libzebtlib.a,kernlib packlib) + +-CernlibFortranProgramTarget(zebfc1,zebfc1.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) +-CernlibFortranProgramTarget(zebfc2,zebfc2.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) +-CernlibFortranProgramTarget(zebfc3,zebfc3.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(zebfc1,zebfc1.o,libzebtlib.a,libzebtlib.a,kernlib packlib) ++CernlibFortranProgramTarget(zebfc2,zebfc2.o,libzebtlib.a,libzebtlib.a,kernlib packlib) ++CernlibFortranProgramTarget(zebfc3,zebfc3.o,libzebtlib.a,libzebtlib.a,kernlib packlib) + +-CernlibFortranProgramTarget(zebjz1,zebjz1.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(zebjz1,zebjz1.o,libzebtlib.a,libzebtlib.a,kernlib packlib) + +-CernlibFortranProgramTarget(zebrz1,zebrz1.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) +-CernlibFortranProgramTarget(zebrz2,zebrz2.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) +-CernlibFortranProgramTarget(zebrz3,zebrz3.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib) ++CernlibFortranProgramTarget(zebrz1,zebrz1.o,libzebtlib.a,libzebtlib.a,kernlib packlib) ++CernlibFortranProgramTarget(zebrz2,zebrz2.o,libzebtlib.a,libzebtlib.a,kernlib packlib) ++CernlibFortranProgramTarget(zebrz3,zebrz3.o,libzebtlib.a,libzebtlib.a,kernlib packlib) + + TestTarget(zebmz1,zxtest.dat,NullParameter) + --- cernlib-2006.dfsg.2.orig/debian/patches/116-fix-fconc64-spaghetti-code.dpatch +++ cernlib-2006.dfsg.2/debian/patches/116-fix-fconc64-spaghetti-code.dpatch @@ -0,0 +1,334 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 116-fix-fconc64-spaghetti-code.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Work around FTBFS on ia64 with recent binutils, apparently caused +## DP: by assignment of goto labels in this file. + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/mathlib/gen/c/fconc64.F cernlib-2005.05.09.dfsg/src/mathlib/gen/c/fconc64.F +--- cernlib-2005.05.09.dfsg~/src/mathlib/gen/c/fconc64.F 1996-04-01 10:02:04.000000000 -0500 ++++ cernlib-2005.05.09.dfsg/src/mathlib/gen/c/fconc64.F 2005-12-12 12:58:23.885981128 -0500 +@@ -190,15 +190,167 @@ + A=HF*((HF-FM)-TI) + B=HF*((HF-FM)+TI) + C=HF +- ASSIGN 1 TO JP +- GO TO 20 ++ 20 IF(LTA) THEN ++ Y=-X1 ++ Y2=Y**2 ++ Y3=Y*Y2 ++ W(1)=A+1 ++ W(2)=A+2 ++ W(3)=B+1 ++ W(4)=B+2 ++ W(5)=C+1 ++ W(6)=C*W(5) ++ W(7)=A+B ++ W(8)=A*B ++ W(9)=(W(8)/C)*Y ++ W(10)=W(1)*W(3) ++ W(11)=W(2)*W(4) ++ W(12)=1+(W(11)/(W(5)+W(5)))*Y ++ W(13)=W(7)-6 ++ W(14)=W(7)+6 ++ W(15)=2-W(8) ++ W(16)=W(15)-W(7)-W(7) ++ ++ V(0)=1 ++ V(1)=1+(W(10)/(C+C))*Y ++ V(2)=W(12)+(W(10)*W(11)/(12*W(6)))*Y2 ++ U(0)=1 ++ U(1)=V(1)-W(9) ++ U(2)=V(2)-W(9)*W(12)+(W(8)*W(10)/(W(6)+W(6)))*Y2 ++ ++ R=1 ++ DO 21 N = 3,NMAX ++ FN=N ++ RR=R ++ H(1)=FN-1 ++ H(2)=FN-2 ++ H(3)=FN-3 ++ H(4)=FN+FN ++ H(5)=H(4)-3 ++ H(6)=H(5)+H(5) ++ H(7)=4*(H(4)-1)*H(5) ++ H(8)=8*H(5)**2*(H(4)-5) ++ H(9)=3*FN**2 ++ W(1)=A+H(1) ++ W(2)=A+H(2) ++ W(3)=B+H(1) ++ W(4)=B+H(2) ++ W(5)=C+H(1) ++ W(6)=C+H(2) ++ W(7)=C+H(3) ++ W(8)=H(2)-A ++ W(9)=H(2)-B ++ W(10)=H(1)-C ++ W(11)=W(1)*W(3) ++ W(12)=W(5)*W(6) ++ ++ W(17)=1+((H(9)+W(13)*FN+W(16))/(H(6)*W(5)))*Y ++ W(18)=-((W(11)*W(10)/H(6)+(H(9)-W(14)*FN+W(15))*W(11)*Y/H(7))/ ++ 1 W(12))*Y ++ W(19)=(W(2)*W(11)*W(4)*W(8)*W(9)/(H(8)*W(7)*W(12)))*Y3 ++ V(3)=W(17)*V(2)+W(18)*V(1)+W(19)*V(0) ++ U(3)=W(17)*U(2)+W(18)*U(1)+W(19)*U(0) ++ R=U(3)/V(3) ++ IF(ABS(R-RR) .LT. EPS) GO TO 1 ++ DO 22 J = 1,3 ++ V(J-1)=V(J) ++ 22 U(J-1)=U(J) ++ 21 CONTINUE ++ ELSE ++ W(1)=X1*A*B/C ++ R=1+W(1) ++ DO 23 N = 1,NMAX ++ FN=N ++ RR=R ++ W(1)=W(1)*X1*(A+FN)*(B+FN)/((C+FN)*(FN+1)) ++ R=R+W(1) ++ IF(ABS(R-RR) .LT. EPS) GO TO 1 ++ 23 CONTINUE ++ END IF ++ GO TO 24 + 1 R1=R + R1=R1/ABS(CGM(A+HF))**2 + A=HF*((TH-FM)-TI) + B=HF*((TH-FM)+TI) + C=TH +- ASSIGN 2 TO JP +- GO TO 20 ++ 120 IF(LTA) THEN ++ Y=-X1 ++ Y2=Y**2 ++ Y3=Y*Y2 ++ W(1)=A+1 ++ W(2)=A+2 ++ W(3)=B+1 ++ W(4)=B+2 ++ W(5)=C+1 ++ W(6)=C*W(5) ++ W(7)=A+B ++ W(8)=A*B ++ W(9)=(W(8)/C)*Y ++ W(10)=W(1)*W(3) ++ W(11)=W(2)*W(4) ++ W(12)=1+(W(11)/(W(5)+W(5)))*Y ++ W(13)=W(7)-6 ++ W(14)=W(7)+6 ++ W(15)=2-W(8) ++ W(16)=W(15)-W(7)-W(7) ++ ++ V(0)=1 ++ V(1)=1+(W(10)/(C+C))*Y ++ V(2)=W(12)+(W(10)*W(11)/(12*W(6)))*Y2 ++ U(0)=1 ++ U(1)=V(1)-W(9) ++ U(2)=V(2)-W(9)*W(12)+(W(8)*W(10)/(W(6)+W(6)))*Y2 ++ ++ R=1 ++ DO 121 N = 3,NMAX ++ FN=N ++ RR=R ++ H(1)=FN-1 ++ H(2)=FN-2 ++ H(3)=FN-3 ++ H(4)=FN+FN ++ H(5)=H(4)-3 ++ H(6)=H(5)+H(5) ++ H(7)=4*(H(4)-1)*H(5) ++ H(8)=8*H(5)**2*(H(4)-5) ++ H(9)=3*FN**2 ++ W(1)=A+H(1) ++ W(2)=A+H(2) ++ W(3)=B+H(1) ++ W(4)=B+H(2) ++ W(5)=C+H(1) ++ W(6)=C+H(2) ++ W(7)=C+H(3) ++ W(8)=H(2)-A ++ W(9)=H(2)-B ++ W(10)=H(1)-C ++ W(11)=W(1)*W(3) ++ W(12)=W(5)*W(6) ++ ++ W(17)=1+((H(9)+W(13)*FN+W(16))/(H(6)*W(5)))*Y ++ W(18)=-((W(11)*W(10)/H(6)+(H(9)-W(14)*FN+W(15))*W(11)*Y/H(7))/ ++ 1 W(12))*Y ++ W(19)=(W(2)*W(11)*W(4)*W(8)*W(9)/(H(8)*W(7)*W(12)))*Y3 ++ V(3)=W(17)*V(2)+W(18)*V(1)+W(19)*V(0) ++ U(3)=W(17)*U(2)+W(18)*U(1)+W(19)*U(0) ++ R=U(3)/V(3) ++ IF(ABS(R-RR) .LT. EPS) GO TO 2 ++ DO 122 J = 1,3 ++ V(J-1)=V(J) ++ 122 U(J-1)=U(J) ++ 121 CONTINUE ++ ELSE ++ W(1)=X1*A*B/C ++ R=1+W(1) ++ DO 123 N = 1,NMAX ++ FN=N ++ RR=R ++ W(1)=W(1)*X1*(A+FN)*(B+FN)/((C+FN)*(FN+1)) ++ R=R+W(1) ++ IF(ABS(R-RR) .LT. EPS) GO TO 2 ++ 123 CONTINUE ++ END IF ++ GO TO 24 + 2 R2=R + FC=RPI*(R1-2*X*R2/ABS(CGM(A-HF))**2) + IF(LM1) FC=2*FC/SQRT(1-X1) +@@ -209,8 +361,84 @@ + A=(HF+FM)-TI + B=(HF+FM)+TI + C=FM+1 +- ASSIGN 3 TO JP +- GO TO 20 ++ 220 IF(LTA) THEN ++ Y=-X1 ++ Y2=Y**2 ++ Y3=Y*Y2 ++ W(1)=A+1 ++ W(2)=A+2 ++ W(3)=B+1 ++ W(4)=B+2 ++ W(5)=C+1 ++ W(6)=C*W(5) ++ W(7)=A+B ++ W(8)=A*B ++ W(9)=(W(8)/C)*Y ++ W(10)=W(1)*W(3) ++ W(11)=W(2)*W(4) ++ W(12)=1+(W(11)/(W(5)+W(5)))*Y ++ W(13)=W(7)-6 ++ W(14)=W(7)+6 ++ W(15)=2-W(8) ++ W(16)=W(15)-W(7)-W(7) ++ ++ V(0)=1 ++ V(1)=1+(W(10)/(C+C))*Y ++ V(2)=W(12)+(W(10)*W(11)/(12*W(6)))*Y2 ++ U(0)=1 ++ U(1)=V(1)-W(9) ++ U(2)=V(2)-W(9)*W(12)+(W(8)*W(10)/(W(6)+W(6)))*Y2 ++ ++ R=1 ++ DO 221 N = 3,NMAX ++ FN=N ++ RR=R ++ H(1)=FN-1 ++ H(2)=FN-2 ++ H(3)=FN-3 ++ H(4)=FN+FN ++ H(5)=H(4)-3 ++ H(6)=H(5)+H(5) ++ H(7)=4*(H(4)-1)*H(5) ++ H(8)=8*H(5)**2*(H(4)-5) ++ H(9)=3*FN**2 ++ W(1)=A+H(1) ++ W(2)=A+H(2) ++ W(3)=B+H(1) ++ W(4)=B+H(2) ++ W(5)=C+H(1) ++ W(6)=C+H(2) ++ W(7)=C+H(3) ++ W(8)=H(2)-A ++ W(9)=H(2)-B ++ W(10)=H(1)-C ++ W(11)=W(1)*W(3) ++ W(12)=W(5)*W(6) ++ ++ W(17)=1+((H(9)+W(13)*FN+W(16))/(H(6)*W(5)))*Y ++ W(18)=-((W(11)*W(10)/H(6)+(H(9)-W(14)*FN+W(15))*W(11)*Y/H(7))/ ++ 1 W(12))*Y ++ W(19)=(W(2)*W(11)*W(4)*W(8)*W(9)/(H(8)*W(7)*W(12)))*Y3 ++ V(3)=W(17)*V(2)+W(18)*V(1)+W(19)*V(0) ++ U(3)=W(17)*U(2)+W(18)*U(1)+W(19)*U(0) ++ R=U(3)/V(3) ++ IF(ABS(R-RR) .LT. EPS) GO TO 3 ++ DO 222 J = 1,3 ++ V(J-1)=V(J) ++ 222 U(J-1)=U(J) ++ 221 CONTINUE ++ ELSE ++ W(1)=X1*A*B/C ++ R=1+W(1) ++ DO 223 N = 1,NMAX ++ FN=N ++ RR=R ++ W(1)=W(1)*X1*(A+FN)*(B+FN)/((C+FN)*(FN+1)) ++ R=R+W(1) ++ IF(ABS(R-RR) .LT. EPS) GO TO 3 ++ 223 CONTINUE ++ END IF ++ GO TO 24 + 3 FC=R + IF(LM1) FC=SIGN(HF,1-X)*(TAU**2+HF**2)*SQRT(ABS(X**2-1))*FC + GO TO 99 +@@ -220,15 +448,7 @@ + A=HF*((HF-FM)-TI) + B=HF*((TH-FM)-TI) + C=1-TI +- ASSIGN 4 TO JP +- GO TO 20 +- 4 R1=EXP((TI-HF)*LOG(X+X)+CLG(1+TI)-CLG((TH-FM)+TI))* +- 1 R*((HF-FM)+TI)/TI +- FC=RPW*R1 +- IF(LM1) FC=FC/SQRT(1-X1) +- GO TO 99 +- +- 20 IF(LTA) THEN ++ 320 IF(LTA) THEN + Y=-X1 + Y2=Y**2 + Y3=Y*Y2 +@@ -257,7 +477,7 @@ + U(2)=V(2)-W(9)*W(12)+(W(8)*W(10)/(W(6)+W(6)))*Y2 + + R=1 +- DO 21 N = 3,NMAX ++ DO 321 N = 3,NMAX + FN=N + RR=R + H(1)=FN-1 +@@ -289,23 +509,29 @@ + V(3)=W(17)*V(2)+W(18)*V(1)+W(19)*V(0) + U(3)=W(17)*U(2)+W(18)*U(1)+W(19)*U(0) + R=U(3)/V(3) +- IF(ABS(R-RR) .LT. EPS) GO TO JP, (1,2,3,4) +- DO 22 J = 1,3 ++ IF(ABS(R-RR) .LT. EPS) GO TO 4 ++ DO 322 J = 1,3 + V(J-1)=V(J) +- 22 U(J-1)=U(J) +- 21 CONTINUE ++ 322 U(J-1)=U(J) ++ 321 CONTINUE + ELSE + W(1)=X1*A*B/C + R=1+W(1) +- DO 23 N = 1,NMAX ++ DO 323 N = 1,NMAX + FN=N + RR=R + W(1)=W(1)*X1*(A+FN)*(B+FN)/((C+FN)*(FN+1)) + R=R+W(1) +- IF(ABS(R-RR) .LT. EPS) GO TO JP, (1,2,3,4) +- 23 CONTINUE ++ IF(ABS(R-RR) .LT. EPS) GO TO 4 ++ 323 CONTINUE + END IF +- FC=0 ++ GO TO 24 ++ 4 R1=EXP((TI-HF)*LOG(X+X)+CLG(1+TI)-CLG((TH-FM)+TI))* ++ 1 R*((HF-FM)+TI)/TI ++ FC=RPW*R1 ++ IF(LM1) FC=FC/SQRT(1-X1) ++ GO TO 99 ++ 24 FC=0 + WRITE(ERRTXT,102) X + CALL MTLPRT(NAME,'C331.2',ERRTXT) + #if defined(CERNLIB_DOUBLE) --- cernlib-2006.dfsg.2.orig/debian/patches/303-shadow-passwords-supported.dpatch +++ cernlib-2006.dfsg.2/debian/patches/303-shadow-passwords-supported.dpatch @@ -0,0 +1,102 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 303-shadow-passwords-supported.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Allow CERN's server code to read from /etc/shadow. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/packlib/cspack/tcpaw/tcpaw.c /tmp/dpep.KyLyTI/cernlib-2005.05.09/src/packlib/cspack/tcpaw/tcpaw.c +--- cernlib-2005.05.09~/src/packlib/cspack/tcpaw/tcpaw.c 2005-04-18 11:39:28.000000000 -0400 ++++ cernlib-2005.05.09/src/packlib/cspack/tcpaw/tcpaw.c 2005-06-08 16:55:00.088372396 -0400 +@@ -28,6 +28,9 @@ + * + */ + #include "cspack/pilot.h" ++#if defined(CERNLIB_LINUX) && ! defined(CERNLIB_MACOSX) ++#define SHADOW_SUPPORT /* for Debian */ ++#endif + #if !defined(CERNLIB_IBM)||defined(CERNLIB_TCPSOCK) + /*N.B. Must define sequence TCPLOG if a log file is required, e.g.*/ + /*#define LOGFILE "disk$dd:-ben.socks-serv.log"*/ /* VMS */ +@@ -231,7 +234,7 @@ + #endif /* OSK */ + #endif /* AUTHENT */ + +-#ifdef linux_softland ++#if defined(linux_softland) || defined(SHADOW_SUPPORT) + #include + #endif /* linux_softland */ + +@@ -1780,10 +1783,10 @@ + union wait ret; + #endif /* APOPWD1 */ + +- char *xpasswd, *crypt(); ++ char *xpasswd, *encrypted, *crypt(); + struct passwd *pw; + +-#ifdef linux_softland ++#if defined(linux_softland) || defined(SHADOW_SUPPORT) + struct spwd *spwd; + #endif /* linux_softland */ + +@@ -1798,6 +1801,7 @@ + reply("Unknown user %s.\n", user); + return(-2); + } ++ encrypted = pw->pw_passwd; + + #ifdef linux_softland + spwd = getspnam(user); +@@ -1805,6 +1809,29 @@ + reply("User %s has illegal shadow password\n",user); + return(-2); + } ++ encrypted = spwd->sp_pwdp; ++ ++#elif defined(SHADOW_SUPPORT) ++ /* shadow passwords may not be enabled in Debian, so must check */ ++ { ++ FILE *test = fopen("/etc/shadow", "r"); ++ if (test) { ++ fclose(test); ++ spwd = getspnam(user); ++ if (spwd == NULL) { ++ reply("User %s has illegal shadow password\n", ++ user); ++ return(-2); ++ } ++ encrypted = spwd->sp_pwdp; ++ } ++ else if (errno == EACCES) { ++ reply("Server has insufficient permissions to " ++ "read /etc/shadow file\n"); ++ return(-2); ++ } ++ } ++ + #endif /* linux_softland */ + + #ifdef APOPWD1 +@@ -1850,15 +1877,16 @@ + #else + + #ifdef linux_softland +- xpasswd = pw_encrypt(pass,spwd->sp_pwdp); ++ xpasswd = pw_encrypt(pass, encrypted); + #else +- xpasswd = crypt(pass, pw->pw_passwd); ++ xpasswd = crypt(pass, encrypted); + #endif /* linux_softland */ ++ + /* The strcmp does not catch null passwords! */ +-#ifdef linux_softland +- if (spwd->sp_pwdp == '\0' || strcmp(xpasswd,spwd->sp_pwdp)) { ++#if defined(linux_softland) || defined(SHADOW_SUPPORT) ++ if (*encrypted == '\0' || strcmp(xpasswd,spwd->sp_pwdp)) { + #else +- if (*pw->pw_passwd == '\0' || strcmp(xpasswd,pw->pw_passwd)) { ++ if (*encrypted == '\0' || strcmp(xpasswd,pw->pw_passwd)) { + #endif /* linux_softland */ + + #endif /* AFS */ --- cernlib-2006.dfsg.2.orig/debian/patches/114-install-scripts-properly.dpatch +++ cernlib-2006.dfsg.2/debian/patches/114-install-scripts-properly.dpatch @@ -0,0 +1,24 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 114-install-scripts-properly.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Install scripts properly (i.e. don't try to strip them). + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/scripts/Imakefile cernlib-2005.05.09.dfsg/src/scripts/Imakefile +--- cernlib-2005.05.09.dfsg~/src/scripts/Imakefile 2004-07-29 10:17:08.000000000 -0400 ++++ cernlib-2005.05.09.dfsg/src/scripts/Imakefile 2005-12-02 10:45:23.091782817 -0500 +@@ -1,10 +1,10 @@ + +-InstallProgram(paw,$(CERN_BINDIR)) ++InstallNamedProg(paw,paw,$(CERN_BINDIR)) + + #if defined(CERNLIB_SHIFT) + InstallNamedProg(cernlib_shift,cernlib,$(CERN_BINDIR)) + #else +-InstallProgram(cernlib,$(CERN_BINDIR)) ++InstallNamedProg(cernlib,cernlib,$(CERN_BINDIR)) + #endif + +-InstallProgram(gxint,$(CERN_BINDIR)) ++InstallNamedProg(gxint,gxint,$(CERN_BINDIR)) --- cernlib-2006.dfsg.2.orig/debian/patches/000-unpack.sh.dpatch +++ cernlib-2006.dfsg.2/debian/patches/000-unpack.sh.dpatch @@ -0,0 +1,16 @@ +#!/bin/sh + +## DP: This is a fake patch used to convince dpatch-edit-patch to unpack the +## DP: CERNLIB source code before trying to generate a diff from it. +## DP: This is a no-op if called when the source has already been unpacked, +## DP: e.g. if running "fakeroot debian/rules patch". +## DP: +## DP: Yes, this is an ugly hack. + +set -e +case "$1" in + -patch) [ -e Makefile ] || cp -p debian/add-ons/Makefile . + make prefix=/usr stampdir/configure-stamp ;; + -unpatch) exit 0 ;; + *) exit 1 ;; +esac --- cernlib-2006.dfsg.2.orig/debian/patches/127-yexpand-makes-tmpfiles-in-pwd.dpatch +++ cernlib-2006.dfsg.2/debian/patches/127-yexpand-makes-tmpfiles-in-pwd.dpatch @@ -0,0 +1,21 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 127-yexpand-makes-tmpfiles-in-pwd.dpatch by Patrice Dumas +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Have yexpand create temp files in $PWD rather than $HOME. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/patchy/yexpand.script cernlib-2006.dfsg.2/src/patchy/yexpand.script +--- cernlib-2006.dfsg.2~/src/patchy/yexpand.script 2005-04-18 08:41:03.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/patchy/yexpand.script 2008-02-26 13:18:35.000000000 -0800 +@@ -26,8 +26,8 @@ + # CERN_ROOT=":$CERN_ROOT" ; export CERN_ROOT + CERN_ROOT=":$CERN/$CERN_LEVEL" ; export CERN_ROOT + +- tfile="$HOME/$tfile.yexp" +- echo "#!/bin/sh" >$tfile ++ tfile="./$tfile.yexp" ++ echo "#! /bin/sh" >$tfile + echo " cat <>$tfile + cat <$ifile >>$tfile + cc=$? --- cernlib-2006.dfsg.2.orig/debian/patches/106-fix-paw++-menus-in-lesstif.dpatch +++ cernlib-2006.dfsg.2/debian/patches/106-fix-paw++-menus-in-lesstif.dpatch @@ -0,0 +1,103 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 106-fix-paw++-menus-in-lesstif.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix odd behavior of Paw++ menus when compiled against Lesstif. The +## DP: problem is that Paw++ Motif code does some awfully weird things that +## DP: Lesstif doesn't support; cf. http://bugs.debian.org/270862 . + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/packlib/kuip/code_motif/mkuip.c /tmp/dpep.KorIaA/cernlib-2005.05.09/src/packlib/kuip/code_motif/mkuip.c +--- cernlib-2005.05.09~/src/packlib/kuip/code_motif/mkuip.c 2005-06-09 14:41:14.451377612 -0400 ++++ cernlib-2005.05.09/src/packlib/kuip/code_motif/mkuip.c 2005-06-09 14:41:22.929573007 -0400 +@@ -1066,7 +1066,7 @@ + { + int narg; + Arg arglist[2]; +- Widget id_pdm; ++ Widget id_pdm, id_pdm_shell; + Widget PdMenu[15]; + + /* +@@ -1076,8 +1076,19 @@ + UxKuipBrowserContext = (_UxCkuipBrowser *)UxGetContext(parent); + + /* create pulldown_menu */ +- id_pdm = XmCreatePulldownMenu (browserMenu,"OptionsPdMenu",arglist,0); +- ++ id_pdm_shell = XtVaCreatePopupShell ("OptionsPdMenu_shell", ++ xmMenuShellWidgetClass, browserMenu, ++ XmNwidth, 1, ++ XmNheight, 1, ++ XmNallowShellResize, TRUE, ++ XmNoverrideRedirect, TRUE, ++ NULL ); ++ id_pdm = XtVaCreateWidget( "OptionsPdMenu", ++ xmRowColumnWidgetClass, ++ id_pdm_shell, ++ XmNrowColumnType, XmMENU_PULLDOWN, ++ NULL ); ++/* id_pdm = XmCreatePulldownMenu (browserMenu,"OptionsPdMenu",arglist,0); */ + + /* create pulldown_menu_entry "Options" */ + XtVaCreateManagedWidget( "optionsMenu", +@@ -1091,7 +1102,7 @@ + /* create list of push_buttons and separators for menu "Option" */ + /* create pulldown_menu for "Raise Window" (with list of appl. shells) */ + narg = 0; +-#if XmREVISION == 99 /* problem with REVISION 2 ! */ ++#if XmVERSION > 1 || XmREVISION >= 2 + XtSetArg(arglist[narg], XmNtearOffModel, XmTEAR_OFF_ENABLED); narg++; + #endif + kuipControlShellM = XmCreatePulldownMenu +@@ -1312,9 +1323,7 @@ + static void create_command_menu(parent) + Widget parent; + { +- Widget id_pdme, id_pdm; +- Arg arglist[2]; +- int narg; ++ Widget id_pdme, id_pdm, id_pdm_shell; + + /* + * find and restore the context for Browser +@@ -1323,12 +1332,26 @@ + UxKuipBrowserContext = (_UxCkuipBrowser *)UxGetContext(parent); + + /* create pulldown_menu_entry "Commands" for all commands */ +- narg = 0; ++ ++ id_pdm_shell = XtVaCreatePopupShell ("CommandsPdMenu_shell", ++ xmMenuShellWidgetClass, browserMenu, ++ XmNwidth, 1, ++ XmNheight, 1, ++ XmNallowShellResize, TRUE, ++ XmNoverrideRedirect, TRUE, ++ NULL ); ++ ++ id_pdm = XtVaCreateWidget( "CommandsPdMenu", ++ xmRowColumnWidgetClass, ++ id_pdm_shell, ++ XmNrowColumnType, XmMENU_PULLDOWN, + #if XmVERSION > 1 || XmREVISION >= 2 +- XtSetArg(arglist[narg], XmNtearOffModel, XmTEAR_OFF_ENABLED); narg++; ++ XmNtearOffModel, XmTEAR_OFF_ENABLED, + #endif +- id_pdm = XmCreatePulldownMenu +- (browserMenu, "CommandsPdMenu", arglist, narg); ++ NULL ); ++ ++/* XmCreatePulldownMenu ++ (browserMenu, "CommandsPdMenu", arglist, narg); */ + + id_pdme = XtVaCreateManagedWidget( "id_pdme", + xmCascadeButtonGadgetClass, browserMenu, +@@ -1927,7 +1950,7 @@ + if (kuipControlShellM != NULL) XtDestroyWidget (kuipControlShellM); + + narg = 0; +-#if XmREVISION == 99 /* problem with REVISION 2 ! */ ++#if XmVERSION > 1 || XmREVISION >= 2 + XtSetArg(arglist[narg], XmNtearOffModel, XmTEAR_OFF_ENABLED); narg++; + #endif + kuipControlShellM = XmCreatePulldownMenu --- cernlib-2006.dfsg.2.orig/debian/patches/311-skip-duplicate-qnext.dpatch +++ cernlib-2006.dfsg.2/debian/patches/311-skip-duplicate-qnext.dpatch @@ -0,0 +1,30 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 311-skip-duplicate-qnext.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Don't compile in redundant versions of qnext. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/packlib/kernlib/kerngen/tcgenc/Imakefile /tmp/dpep.5v33rR/cernlib-2005.05.09/src/packlib/kernlib/kerngen/tcgenc/Imakefile +--- cernlib-2005.05.09~/src/packlib/kernlib/kerngen/tcgenc/Imakefile 1998-03-05 08:17:18.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/kernlib/kerngen/tcgenc/Imakefile 2005-06-09 14:28:05.755053006 -0400 +@@ -1,5 +1,6 @@ ++/* don't compile qnexte.F --Kevin*/ + SRCS_F= abend.F accessf.F exitf.F \ @@\ +- intrac.F jumpxn.F lnblnk.F locb.F locf.F qnexte.F unlinkf.F ++ intrac.F jumpxn.F lnblnk.F locb.F locf.F unlinkf.F + + #ifndef CERNLIB_OS9 + SRCS_F := $(SRCS_F) timed.F timel.F timex.F +diff -urNad cernlib-2005.05.09/src/packlib/zebra/qutil/Imakefile /tmp/dpep.5v33rR/cernlib-2005.05.09/src/packlib/zebra/qutil/Imakefile +--- cernlib-2005.05.09~/src/packlib/zebra/qutil/Imakefile 1996-03-06 05:47:15.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/zebra/qutil/Imakefile 2005-06-09 14:28:05.755053006 -0400 +@@ -1,6 +1,7 @@ ++/* don't compile qnext.F --Kevin*/ + SRCS_F= izbcd.F izbcdt.F izbcdv.F izchav.F izhnum.F lzbyt.F \ @@\ + lzfind.F lzfval.F lzlast.F lzlong.F nzbank.F nzfind.F nzlong.F \ @@\ +- qnext.F zhtoi.F zitoh.F zkrak.F zkrakn.F znumid.F zpress.F \ @@\ ++ zhtoi.F zitoh.F zkrak.F zkrakn.F znumid.F zpress.F \ @@\ + zshunt.F zsort.F zsorth.F zsorti.F zsorv.F zsorvh.F zsorvi.F \ @@\ + ztopsy.F + --- cernlib-2006.dfsg.2.orig/debian/patches/703-patch-code_motif-packlib-Imakefiles.dpatch +++ cernlib-2006.dfsg.2/debian/patches/703-patch-code_motif-packlib-Imakefiles.dpatch @@ -0,0 +1,79 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 703-patch-code_motif-packlib-Imakefiles.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix up Imakefiles, etc. so that code_motif becomes a separate library +## DP: after moving it around in the patch 703 shell script. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/code_motif/Imakefile /tmp/dpep.mcTNBz/cernlib-2005.05.09/src/code_motif/Imakefile +--- cernlib-2005.05.09~/src/code_motif/Imakefile 1996-12-10 10:20:59.000000000 -0500 ++++ cernlib-2005.05.09/src/code_motif/Imakefile 2005-06-12 10:31:56.480928814 -0400 +@@ -10,8 +10,10 @@ + kuxxt.c mkdcmp.c mkdgra.c mkdpan.c mkmpan.c mkuip.c + + MotifDependantMakeVar(SRCS_C,$(MOTIF_SRCS_C)) +- ++ ++/* Commented out since kmutil.c has been moved to packlib/kuip/code_kuip + SRCS_C:= $(SRCS_C) kmutil.c ++*/ + + #if defined(CERNLIB_VAXVMS) + +@@ -22,4 +24,10 @@ + + PACKAGE_INCLUDES := $(PACKAGE_INCLUDES) MotifIncludes X11Includes + +-SubdirLibraryTarget(NullParameter,NullParameter) ++/* Top of package boilerplate to split this out as a separate library */ ++ ++TopOfPackage(packlib-lesstif) ++ ++SubdirLibraryTarget(packlib-lesstif,NullParameter) ++ ++InstallLibrary(packlib-lesstif,$(CERN_LIBDIR)) +diff -urNad cernlib-2005.05.09/src/Imakefile /tmp/dpep.mcTNBz/cernlib-2005.05.09/src/Imakefile +--- cernlib-2005.05.09~/src/Imakefile 2005-06-12 10:31:54.221414133 -0400 ++++ cernlib-2005.05.09/src/Imakefile 2005-06-12 10:32:20.947673659 -0400 +@@ -2,7 +2,7 @@ + #define PassCDebugFlags + + +-LIBDIRS= kernlib packlib graflib mathlib ++LIBDIRS= kernlib packlib code_motif graflib mathlib + + SUBDIRS= $(LIBDIRS) patchy cfortran + +diff -urNad cernlib-2005.05.09/src/packlib/kuip/code_kuip/Imakefile /tmp/dpep.mcTNBz/cernlib-2005.05.09/src/packlib/kuip/code_kuip/Imakefile +--- cernlib-2005.05.09~/src/packlib/kuip/code_kuip/Imakefile 1999-11-24 04:52:07.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/kuip/code_kuip/Imakefile 2005-06-12 10:31:56.480928814 -0400 +@@ -3,7 +3,9 @@ + SRCS_C= getline.c kalias.c kbrow.c kedit.c kexec.c khash.c kicon.c \ @@\ + kienbr.c kipiaf.c kkern.c kmacro.c kmath.c kmenu.c kmisc.c \ @@\ + kmodel.c kmterm.c kuinit.c kutrue.c kuvers.c kuwhag.c \ @@\ +- kuwhat.c kvect.c ++ kuwhat.c kvect.c \ @@\ ++ kmutil.c ++ /* ^^ moved here from code_motif. --Kevin McCarty */ + + #ifdef CERNLIB_WINNT + SRCS_C :=$(SRCS_C) kmutil0.c +diff -urNad cernlib-2005.05.09/src/packlib/kuip/Imakefile /tmp/dpep.mcTNBz/cernlib-2005.05.09/src/packlib/kuip/Imakefile +--- cernlib-2005.05.09~/src/packlib/kuip/Imakefile 1997-11-28 12:26:56.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/kuip/Imakefile 2005-06-12 10:31:56.480928814 -0400 +@@ -4,11 +4,14 @@ + + LIBDIRS= code_kuip + ++/* Commented out so that code_motif gives a separate shared library ++ * --Kevin McCarty + #ifndef CERNLIB_WINNT + LIBDIRS := $(LIBDIRS) code_motif + #else + LIBDIRS := $(LIBDIRS) code_windows + #endif ++*/ + + SUBDIRS= $(LIBDIRS) programs examples kuip + --- cernlib-2006.dfsg.2.orig/debian/patches/304-update-Imake-config-files.dpatch +++ cernlib-2006.dfsg.2/debian/patches/304-update-Imake-config-files.dpatch @@ -0,0 +1,1982 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 304-update-Imake-config-files.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Use Imake.cf stolen from recent XFree86 code, as it is much more +## DP: up-to-date than the Imake.cf in CERNLIB source. Also update linux.cf +## DP: to support most Linux architectures. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/config/Imake.cf cernlib-2006.dfsg.2/src/config/Imake.cf +--- cernlib-2006.dfsg.2~/src/config/Imake.cf 2006-09-15 02:34:47.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/config/Imake.cf 2008-03-14 10:03:13.000000000 -0700 +@@ -1,27 +1,5 @@ +-/* $Id: Imake.cf,v 1.6 2006/09/15 09:34:47 mclareni Exp $ +- * +- * $Log: Imake.cf,v $ +- * Revision 1.6 2006/09/15 09:34:47 mclareni +- * Submitted mods for gcc4/gfortran and MacOSX, corrected to work also on slc4 with gcc3.4 and 4.1 +- * +- * Revision 1.5 2004/10/05 15:54:40 mclareni +- * Add configuration file linux-lp64 for Linux 64-bit pointer systems like AMD Opteron and Intel IA64. +- * +- * Revision 1.4 1998/09/25 09:23:38 mclareni +- * Modifications for the Mklinux port flagged by CERNLIB_PPC +- * +- * Revision 1.3 1998/06/09 13:54:39 cernlib +- * Make sure unix is properly undefined to compile kernlib/unix +- * +- * Revision 1.2 1995/12/21 11:31:57 cernlib +- * Imake files end 1995 +- * +- * Revision 1.1.1.1 1995/12/20 15:26:44 cernlib +- * X11R6 config files unmodified +- * +- * +- */ +-XCOMM $XConsortium: Imake.cf,v 1.19 95/01/05 19:24:32 kaleb Exp $ ++XCOMM $XdotOrg: util/cf/Imake.cf,v 1.12 2005/11/08 06:33:24 jkj Exp $ ++XCOMM $Xorg: Imake.cf,v 1.4 2000/08/17 19:41:45 cpqbld Exp $ + /* + * To add support for another platform: + * +@@ -40,257 +18,586 @@ + * + * 4. Create a .cf file with the name given by MacroFile. + */ ++XCOMM $XFree86: xc/config/cf/Imake.cf,v 3.88 2003/12/16 21:30:21 herrb Exp $ + +-#ifdef ultrix +-#define MacroIncludeFile +-#define MacroFile ultrix.cf +-#ifdef vax +-#undef vax +-#define VaxArchitecture +-#endif +-#ifdef mips +-#undef mips +-#define MipsArchitecture ++#if defined(__APPLE__) ++# undef __APPLE__ ++# define MacroIncludeFile ++# define MacroFile MacOSX.cf ++# define MacOSXArchitecture ++# define DarwinArchitecture ++# ifdef __ppc__ ++# define PpcDarwinArchitecture ++# undef __ppc__ ++# endif ++# ifdef __i386__ ++# define i386DarwinArchitecture ++# undef __i386__ ++# endif + #endif +-#undef ultrix +-#define UltrixArchitecture ++ ++#if defined(clipper) || defined(__clipper__) ++# undef clipper ++# define MacroIncludeFile ++# define MacroFile ingr.cf ++# define IngrArchitecture ++#endif /* clipper */ ++ ++#ifdef __CYGWIN__ ++#define MacroIncludeFile ++#define MacroFile cygwin.cf ++#define cygwinArchitecture ++#define i386Architecture ++#undef i386 ++#undef i486 ++#undef i586 ++#undef i686 ++#undef __i386__ ++#undef _X86_ ++#undef __CYGWIN__ ++#endif /* CYGWIN */ ++ ++#ifdef ultrix ++# define MacroIncludeFile ++# define MacroFile ultrix.cf ++# ifdef vax ++# undef vax ++# define VaxArchitecture ++# endif ++# ifdef mips ++# undef mips ++# define MipsArchitecture ++# define MipselArchitecture ++# endif ++# undef ultrix ++# define UltrixArchitecture + #endif /* ultrix */ + +-#if defined(vax) && !defined(UltrixArchitecture) +-#define MacroIncludeFile +-#define MacroFile bsd.cf +-#undef vax +-#define BSDArchitecture +-#define VaxArchitecture ++#if defined(vax) && !defined(UltrixArchitecture) && !defined(__OpenBSD__) ++# define MacroIncludeFile ++# define MacroFile bsd.cf ++# undef vax ++# define BSDArchitecture ++# define VaxArchitecture + #endif /* vax */ + +-#ifdef bsdi +-#define MacroIncludeFile +-#define MacroFile bsdi.cf +-#undef bsdi +-#define BSD386Architecture +-#define i386BsdArchitecture +-#define i386Architecture ++#ifdef __bsdi__ ++# define MacroIncludeFile ++# define MacroFile bsdi.cf ++# undef __bsdi__ ++# ifdef bsdi ++# undef bsdi ++# endif ++# define BSDOSArchitecture ++# if defined(__i386__) || defined(i386) ++# define i386BsdArchitecture ++# define i386Architecture ++# undef i386 ++# undef __i386__ ++# endif ++# if defined(__ppc__) || defined(ppc) ++# define PpcBsdArchitecture ++# define PpcArchitecture ++# undef ppc ++# undef __ppc__ ++# endif ++# if defined(__sparc__) || defined(__sparc_v9__) || defined(sparc) ++# define SparcBsdArchitecture ++# define SparcArchitecture ++# undef sparc ++# undef __sparc__ ++# undef __sparc_v9__ ++# endif + #endif /* bsdi */ + +-#ifdef __NetBSD__ +-#define MacroIncludeFile +-#define MacroFile NetBSD.cf +-#undef __NetBSD__ +-#define NetBSDArchitecture +-#ifdef __i386__ +-#define i386BsdArchitecture +-#define i386Architecture +-#endif +-#if defined(__sparc__) || defined(sparc) +-#define SparcArchitecture +-#undef sparc ++#ifdef __OpenBSD__ ++# undef __OpenBSD__ ++# undef __NetBSD__ ++# define OpenBSDArchitecture ++# define KOpenBSDArchitecture ++# define MacroIncludeFile ++# define MacroFile OpenBSD.cf ++# ifdef __i386__ ++# define i386BsdArchitecture ++# define i386Architecture ++# undef i386 ++# endif ++# if defined(__sparc__) || defined(sparc) ++# if !defined(__arch64__) ++# define SparcArchitecture ++# else ++# define Sparc64Architecture ++# endif ++# undef sparc ++# endif ++# if defined(__mips__) || defined(mips) ++# define MipsArchitecture ++# ifdef arc ++# define ArcArchitecture ++# undef arc ++# endif ++# ifdef pmax ++# define PmaxArchitecture ++# undef pmax ++# endif ++# undef mips ++# endif ++# if defined(__alpha__) || defined(alpha) ++# define AlphaArchitecture ++# undef __alpha__ ++# undef alpha ++# endif ++# if defined(__amd64__) || defined(__x86_64__) ++# define AMD64Architecture ++# undef __amd64__ ++# undef __x86_64__ ++# undef amd64 ++# endif ++# if defined(__mc68020__) || defined(mc68020) ++# define Mc68020Architecture ++# if defined(amiga) ++# define AmigaArchitecture ++# undef amiga ++# endif ++# if defined(hp300) ++# define Hp300Architecture ++# undef hp300 ++# endif ++# if defined(mac68k) ++# define Mac68kArchitecture ++# undef mac68k ++# endif ++# if defined(mvme68k) ++# define Mvme68kArchitecture ++# undef mvme68k ++# endif ++# if defined(sun3) ++# define Sun3Architecture ++# undef sun3 ++# endif ++# undef mc68000 ++# endif ++# ifdef __powerpc__ ++# define PpcArchitecture ++# undef __powerpc__ ++# undef __macppc__ ++# undef macppc ++# endif ++# ifdef __vax__ ++# undef vax ++# undef __vax__ ++# define VaxArchitecture ++# endif ++# ifdef __hppa__ ++# ifndef HPArchitecture ++# define HPArchitecture ++# endif ++# undef __hppa__ ++# endif /* __hppa__ */ ++#endif /* OpenBSD */ ++ ++/* Systems based on kernel of OpenBSD */ ++#if defined(__OpenBSD_kernel__) ++#define KOpenBSDArchitecture + #endif ++ ++#ifdef __NetBSD__ ++# define MacroIncludeFile ++# define MacroFile NetBSD.cf ++# undef __NetBSD__ ++# define NetBSDArchitecture ++# define KNetBSDArchitecture ++# ifdef __i386__ ++# define i386BsdArchitecture ++# define i386Architecture ++# undef i386 ++# endif ++# if defined(__sparc64__) || defined(__sparc_v9__) || defined(__arch64__) ++# define Sparc64Architecture ++# endif ++# if defined(__sparc__) || defined(sparc) ++# define SparcArchitecture ++# undef sparc ++# if defined(__sparc_v9__) || defined(__arch64__) ++# define Sparc64Architecture ++# endif ++# endif ++# ifdef mips ++# define MipsArchitecture ++# define ArcArchitecture ++# undef mips ++# endif ++# ifdef __alpha__ ++# define AlphaArchitecture ++# define AlphaBsdArchitecture ++# undef __alpha__ ++# endif ++# ifdef mc68000 ++# define Mc68020Architecture ++# endif ++# ifdef __arm32__ ++# define Arm32Architecture ++# undef __arm32__ ++# endif ++# ifdef __vax__ ++# define VaxArchitecture ++# undef __vax__ ++# endif ++# ifdef __powerpc__ ++# define PpcArchitecture ++# undef __powerpc__ ++# endif + #endif /* NetBSD */ + +-#ifdef __FreeBSD__ +-#define MacroIncludeFile +-#define MacroFile FreeBSD.cf +-#undef __FreeBSD__ +-#define FreeBSDArchitecture +-#ifdef __i386__ +-#define i386BsdArchitecture +-#define i386Architecture ++/* Systems based on kernel of NetBSD */ ++#if defined(__NetBSD_kernel__) ++#define KNetBSDArchitecture + #endif ++ ++#ifdef __DragonFly__ ++# define MacroIncludeFile ++# define MacroFile DragonFly.cf ++# undef __DragonFly__ ++# undef __FreeBSD__ ++# define DragonFlyArchitecture ++# define FreeBSDArchitecture ++# ifdef __i386__ ++# define i386BsdArchitecture ++# define i386Architecture ++# undef i386 ++# endif ++# ifdef __sparc64__ ++# define Sparc64Architecture ++# undef __sparc64__ ++# endif ++# ifdef __ia64__ ++# define ia64Architecture ++# undef __ia64__ ++# endif ++# ifdef __amd64__ ++# define x86_64Architecture ++# undef __amd64__ ++# undef __x86_64__ ++# endif ++#endif /* __DragonFly__ */ ++ ++#ifdef __FreeBSD__ ++# define MacroIncludeFile ++# define MacroFile FreeBSD.cf ++# undef __FreeBSD__ ++# define FreeBSDArchitecture ++# define KFreeBSDArchitecture ++# ifdef __i386__ ++# define i386BsdArchitecture ++# define i386Architecture ++# undef i386 ++# endif ++# ifdef __alpha__ ++# define AlphaBsdArchitecture ++# define AlphaArchitecture ++# undef __alpha__ ++# endif ++# ifdef __sparc64__ ++# define Sparc64Architecture ++# undef __sparc64__ ++# endif ++# ifdef __ia64__ ++# define ia64Architecture ++# undef __ia64__ ++# endif ++# ifdef __amd64__ ++# define AMD64Architecture ++# undef __amd64__ ++# undef __x86_64__ ++# endif ++# ifdef __powerpc__ ++# define PpcArchitecture ++# undef __powerpc__ ++# endif + #endif /* __FreeBSD__ */ + +-#ifdef AMOEBA +-/* Should be before the 'sun' entry because we may be cross-compiling */ +-#define MacroIncludeFile +-#define MacroFile Amoeba.cf +-#if defined(i80386) || defined(__i80386__) +-#define i386Architecture +-#else +-#if defined(mc68000) || defined(__mc68000__) +-#define Sun3Architecture +-#define SunArchitecture +-#else +-#if defined(sparc) || defined(__sparc__) +-#define SparcArchitecture +-#define SunArchitecture +-#endif +-#endif ++/* Systems based on kernel of FreeBSD */ ++#if defined(__FreeBSD_kernel__) ++#define KFreeBSDArchitecture + #endif +-#undef i80386 +-#undef mc68000 +-#undef sparc +-#undef sun ++ ++#ifdef AMOEBA ++ /* Should be before the 'sun' entry because we may be cross-compiling */ ++# define MacroIncludeFile ++# define MacroFile Amoeba.cf ++# if defined(i80386) || defined(__i80386__) ++# undef i80386 ++# define i386Architecture ++# else ++# if defined(mc68000) || defined(__mc68000__) ++# undef mc68000 ++# define Sun3Architecture ++# define SunArchitecture ++# else ++# if defined(sparc) || defined(__sparc__) ++# undef sparc ++# define SparcArchitecture ++# define SunArchitecture ++# endif ++# endif ++# undef sun ++# endif + #endif /* AMOEBA */ + + #ifdef sun +-#define MacroIncludeFile +-#define MacroFile sun.cf +-#ifdef SVR4 +-#undef SVR4 +-#define SVR4Architecture +-#endif +-#ifdef sparc +-#undef sparc +-#define SparcArchitecture +-#endif +-#ifdef mc68000 +-#undef mc68000 +-#define Sun3Architecture +-#endif +-#ifdef i386 +-#undef i386 +-#define i386Architecture +-#endif +-#undef sun +-#define SunArchitecture ++# define MacroIncludeFile ++# define MacroFile sun.cf ++# ifdef SVR4 ++# undef SVR4 ++# define SVR4Architecture ++# endif ++# ifdef sparc ++# undef sparc ++# define SparcArchitecture ++# endif ++# ifdef __sparcv9 ++# undef __sparcv9 ++# define Sparc64Architecture ++# endif ++# ifdef mc68000 ++# undef mc68000 ++# define Sun3Architecture ++# endif ++# if defined(__amd64) || defined(__x86_64) ++# undef __amd64 ++# undef __x86_64 ++# undef amd64 ++# undef i386 ++# define AMD64Architecture ++# endif ++# ifdef i386 ++# undef i386 ++# define i386Architecture ++# endif ++# undef sun ++# define SunArchitecture + #endif /* sun */ + + #ifdef hpux +-#define MacroIncludeFile +-#define MacroFile hp.cf +-#undef hpux +-#define HPArchitecture ++# define MacroIncludeFile ++# define MacroFile hp.cf ++# undef hpux ++# define HPArchitecture + #endif /* hpux */ + +-#ifdef USL +-#define MacroIncludeFile +-#define MacroFile usl.cf +-#undef USL +-#undef SVR4 +-#define SVR4Architecture +-#define i386Architecture +-#endif /* USL */ ++#ifdef __SCO__ ++# define MacroIncludeFile ++# define MacroFile sco5.cf ++# undef __SCO__ ++# undef sco ++# undef USL ++# undef SYSV ++# undef i386 ++# undef SCO ++# undef SVR4 ++# define i386Architecture ++# define SCOArchitecture ++# define i386SVR3Architecture ++# define SVR3Architecture ++# define i386ScoArchitecture ++# define i386Sco325Architecture ++# undef i386 ++# undef i486 ++# undef i586 ++# undef i686 ++# undef k6 ++# undef __i386__ ++# undef __i486__ ++# undef __i586__ ++# undef __i686__ ++# undef __k6__ ++# undef __i386 ++# undef __i486 ++# undef __i586 ++# undef __i686 ++# undef __k6 ++# undef pentium ++# undef __pentium ++# undef pentiumpro ++# undef __pentiumpro ++#endif /* __SCO__ - SCO Open Server 5 */ ++ ++#ifdef __UNIXWARE__ ++# define MacroIncludeFile ++# define MacroFile usl.cf ++# undef __UNIXWARE__ ++# undef USL ++# undef SVR4 ++# undef i386 ++# undef SVR5 ++# undef SYSV5 ++# define SVR4Architecture ++# define i386Architecture ++# define USLArchitecture ++# define UnixWareArchitecture ++# undef i386 ++# undef i486 ++# undef i586 ++# undef i686 ++# undef k6 ++# undef __i386__ ++# undef __i486__ ++# undef __i586__ ++# undef __i686__ ++# undef __k6__ ++# undef __i386 ++# undef __i486 ++# undef __i586 ++# undef __i686 ++# undef __k6 ++# undef pentium ++# undef __pentium ++# undef pentiumpro ++# undef __pentiumpro ++#endif /* __UNIXWARE__ */ + + #ifdef NCR +-#define MacroIncludeFile +-#define MacroFile ncr.cf +-#undef NCR +-#undef SVR4 +-#define SVR4Architecture +-#define i386Architecture ++# define MacroIncludeFile ++# define MacroFile ncr.cf ++# undef NCR ++# undef SVR4 ++# undef i386 ++# define SVR4Architecture ++# define i386Architecture ++# define NCRArchitecture + #endif /* NCR */ + + #ifdef apollo +-#define MacroIncludeFile +-#define MacroFile apollo.cf +-#undef apollo +-#define ApolloArchitecture ++# define MacroIncludeFile ++# define MacroFile apollo.cf ++# undef apollo ++# define ApolloArchitecture + #endif /* apollo */ + + #ifdef sony +-#define MacroIncludeFile +-#define MacroFile sony.cf +-#undef sony +-#undef sony_news +-#define SonyArchitecture +-#ifdef mc68020 +-#undef mc68020 +-#undef mc68030 +-#define Mc68020Architecture +-#endif +-#ifdef mips +-#undef mips +-#define MipsArchitecture +-#endif +-#if !defined(bsd43) || defined(SYSTYPE_SYSV) || defined(_SYSTYPE_SYSV) +-#define SonySysvArchitecture +-#else +-#define SonyBsdArchitecture +-#endif ++# define MacroIncludeFile ++# define MacroFile sony.cf ++# undef sony ++# undef sony_news ++# define SonyArchitecture ++# ifdef mc68020 ++# undef mc68020 ++# undef mc68030 ++# define Mc68020Architecture ++# endif ++# ifdef mips ++# undef mips ++# define MipsArchitecture ++# endif ++# ifdef __svr4 ++# define SVR4Architecture ++# else ++# if !defined(bsd43) || defined(SYSTYPE_SYSV) || defined(_SYSTYPE_SYSV) ++# define SonySysvArchitecture ++# else ++# define SonyBsdArchitecture ++# endif ++# endif + #endif /* sony */ + + #ifdef M4310 +-#define MacroIncludeFile +-#define MacroFile pegasus.cf +-#undef M4310 +-#define PegasusArchitecture ++# define MacroIncludeFile ++# define MacroFile pegasus.cf ++# undef M4310 ++# define PegasusArchitecture + #endif /* M4310 */ + + #ifdef M4330 +-#define MacroIncludeFile +-#define MacroFile m4330.cf +-#undef M4330 +-#define M4330Architecture ++# define MacroIncludeFile ++# define MacroFile m4330.cf ++# undef M4330 ++# define M4330Architecture + #endif /* M4330 */ + + #ifdef macII +-#define MacroIncludeFile +-#define MacroFile macII.cf +-#undef macII +-#define MacIIArchitecture ++# define MacroIncludeFile ++# define MacroFile macII.cf ++# undef macII ++# define MacIIArchitecture + #endif /* macII */ + +-#ifdef __APPLE__ +-# define MacroIncludeFile +-# define MacroFile MacOSX.cf +-# define MacOSXArchitecture +-# define DarwinArchitecture +-#endif +- + #ifdef _CRAY +-#define MacroIncludeFile +-#define MacroFile cray.cf +-#undef cray +-#undef CRAY +-#undef CRAY1 +-#undef CRAY2 +-#undef YMP +-#define CrayArchitecture ++# define MacroIncludeFile ++# define MacroFile cray.cf ++# undef cray ++# undef CRAY ++# undef CRAY1 ++# undef CRAY2 ++# undef YMP ++# define CrayArchitecture + #endif /* _CRAY */ + + #ifdef sgi +-#define MacroIncludeFile +-#define MacroFile sgi.cf +-#undef sgi +-#define SGIArchitecture +-#undef mips +-#define MipsArchitecture ++# define MacroIncludeFile ++# define MacroFile sgi.cf ++# undef sgi ++# define SGIArchitecture ++# undef mips ++# undef __mips ++# define MipsArchitecture ++# ifdef _SVR4 ++# undef _SVR4 ++# define SVR4Architecture ++# endif ++# ifdef _SYSTYPE_SVR4 ++# undef _SYSTYPE_SVR4 ++# define SVR4Architecture ++# endif + #endif /* sgi */ + + #ifdef stellar +-#define MacroIncludeFile +-#define MacroFile stellar.cf +-#undef stellar +-#define StellarArchitecture ++# define MacroIncludeFile ++# define MacroFile stellar.cf ++# undef stellar ++# define StellarArchitecture + #endif /* stellar */ + + #if defined(ibm) || defined(_IBMR2) || defined(ibm032) || defined(aix) +-#define MacroIncludeFile +-#define MacroFile ibm.cf +-#ifdef ibm +-#undef ibm +-#endif +-#define IBMArchitecture +-#ifdef i386 +-#undef i386 +-#define PS2Architecture +-#endif +-#ifdef ibm032 +-#undef ibm032 +-#define RtArchitecture +-#endif +-#ifdef aix +-#undef aix +-#define AIXArchitecture +-#endif +-#ifdef _IBMR2 +-#undef _IBMR2 +-#define RsArchitecture +-#endif ++# define MacroIncludeFile ++# define MacroFile ibm.cf ++# ifdef ibm ++# undef ibm ++# endif ++# define IBMArchitecture ++# ifdef i386 ++# undef i386 ++# define PS2Architecture ++# endif ++# ifdef ibm032 ++# undef ibm032 ++# define RtArchitecture ++# endif ++# ifdef aix ++# undef aix ++# define AIXArchitecture ++# endif ++# ifdef _IBMR2 ++# undef _IBMR2 ++# if (DefaultOSMajorVersion < 5) ++# define RsArchitecture ++# else ++# define PpcArchitecture ++# endif ++# endif + #endif /* ibm */ + + #ifdef luna +-#undef luna +-#define MacroIncludeFile +-#define MacroFile luna.cf +-#define LunaArchitecture +-#ifdef mc68000 +-#undef mc68000 +-#define Mc68000Architecture +-#else +-#undef mc88000 +-#define Mc88000Architecture +-#endif ++# undef luna ++# define MacroIncludeFile ++# define MacroFile luna.cf ++# define LunaArchitecture ++# ifdef mc68000 ++# undef mc68000 ++# define Mc68000Architecture ++# else ++# undef mc88000 ++# define Mc88000Architecture ++# endif + #endif /* luna */ + + #ifdef Mips +@@ -317,9 +624,14 @@ + # endif + #endif /* MOTOROLA */ + +-#ifdef SVR4 ++#if defined(SVR4) && !defined(DGUX) + # ifdef i386 + # define i386Architecture ++# undef i386 ++# endif ++# ifdef PC98 ++# define PANIX98Architecture ++# undef PC98 + # endif + # define SVR4Architecture + # define MacroIncludeFile +@@ -329,13 +641,42 @@ + + #ifdef SYSV + # ifdef i386 +-# define MacroIncludeFile +-# define MacroFile x386.cf +-# define i386SVR3Architecture +-# endif ++# undef i386 ++# ifdef ISC ++# define i386Architecture ++# define i386SVR3Architecture ++# define MacroIncludeFile ++# define MacroFile isc.cf ++# define i386IscArchitecture ++# undef ISC ++# ifdef ISC202 ++# define IscVersion 202 ++# undef ISC202 ++# else ++# ifdef ISC30 ++# define IscVersion 300 ++# undef ISC30 ++# else ++# ifdef ISC40 ++# define IscVersion 400 ++# undef ISC40 ++# else ++# define IscVersion 221 ++# endif /* ISC40 */ ++# endif /* ISC30 */ ++# endif /* ISC202 */ ++# endif /* ISC */ ++# ifndef MacroFile ++# define i386SVR3Architecture ++# define MacroIncludeFile ++# define MacroFile x386.cf ++# endif /* MacroFile */ ++# endif /* i386 */ + #endif /* SYSV */ + ++/* SYSV386 is here for backward compatibility only */ + #ifdef SYSV386 ++# undef i386 + # ifdef SVR4 + # define i386Architecture + # define SVR4Architecture +@@ -343,18 +684,46 @@ + # define MacroIncludeFile + # define MacroFile svr4.cf + # undef SVR4 +-# else +-# define MacroIncludeFile +-# define MacroFile x386.cf +-# define i386SVR3Architecture +-# endif ++# else /* ! SVR4 */ ++# ifdef ISC ++# define i386Architecture ++# define i386SVR3Architecture ++# define MacroIncludeFile ++# define MacroFile isc.cf ++# define i386IscArchitecture ++# undef ISC ++# ifdef ISC202 ++# define IscVersion 202 ++# undef ISC202 ++# else ++# ifdef ISC30 ++# define IscVersion 300 ++# undef ISC30 ++# else ++# ifdef ISC40 ++# define IscVersion 400 ++# undef ISC40 ++# else ++# define IscVersion 221 ++# endif /* ISC40 */ ++# endif /* ISC30 */ ++# endif /* ISC202 */ ++# endif /* ISC */ ++# ifndef MacroFile ++# define i386SVR3Architecture ++# define MacroIncludeFile ++# define MacroFile x386.cf ++# endif /* MacroFile */ ++# endif /* ! SVR4 */ + #endif /* SYSV386 */ + + #ifdef DGUX +-#define MacroIncludeFile +-#define MacroFile DGUX.cf +-#undef DGUX +-#define DguxArchitecture ++# define i386Architecture ++# define SVR4Architecture ++# define MacroIncludeFile ++# define MacroFile DGUX.cf ++# undef DGUX ++# define DguxArchitecture + #endif /* DGUX */ + + #ifdef __convex__ +@@ -366,101 +735,446 @@ + # define ConvexArchitecture + #endif /* _convex_ */ + +-/* GF. #ifdef __osf__ */ +-#if defined(__osf__) || defined(__alpha) +-#define MacroIncludeFile +-#define MacroFile osf1.cf +-#define OSF1Architecture +-#undef __osf__ +-#ifdef __mips__ +-#undef __mips__ +-#define MipsArchitecture +-#endif +-#ifdef __alpha +-#undef __alpha +-#define AlphaArchitecture +-#endif ++#ifdef __osf__ ++# define MacroIncludeFile ++# define MacroFile osf1.cf ++# define OSF1Architecture ++# undef __osf__ ++# ifdef __mips__ ++# undef __mips__ ++# define MipsArchitecture ++# define MipselArchitecture ++# endif ++# ifdef __alpha ++# undef __alpha ++# define AlphaArchitecture ++# endif + #endif /* __osf__ */ + + #ifdef Oki +-#define MacroIncludeFile +-#define MacroFile Oki.cf +-#undef Oki +-#define i860SVR4Architecture ++# define MacroIncludeFile ++# define MacroFile Oki.cf ++# undef Oki ++# define i860SVR4Architecture ++# define SVR4Architecture ++# undef SVR4 + #endif /* Oki */ + +-#ifdef WIN32 +-#define MacroIncludeFile +-#define MacroFile Win32.cf +-#define Win32Architecture ++#if defined(WIN32) && !defined(__GNUC__) ++# define MacroIncludeFile ++# define MacroFile Win32.cf ++# define Win32Architecture + #endif /* WIN32 */ + +-#ifdef linux +-#ifdef PPC +-#define MacroIncludeFile +-#define MacroFile linux-pmac.cf +-#undef linux +-#undef PPC +-#define LinuxArchitecture +-#define PPCArchitecture +-#elif _LP64 +-#define MacroIncludeFile +-#define MacroFile linux-lp64.cf +-#undef linux +-#undef _LP64 +-#define LinuxArchitecture +-#else +-#define MacroIncludeFile +-#define MacroFile linux.cf +-#undef linux +-#define LinuxArchitecture ++#if defined(WIN32) && defined(__GNUC__) ++#define MacroIncludeFile ++#define MacroFile mingw.cf ++#define Win32Architecture ++#define mingwArchitecture + #define i386Architecture +-#endif +-#endif /* linux */ ++#undef i386 ++#undef i486 ++#undef i586 ++#undef i686 ++#undef __i386__ ++#undef _X86_ ++#undef __MINGW32__ ++#endif /* CYGWIN */ ++ ++#if defined(linux) || defined(__GLIBC__) ++# define MacroIncludeFile ++# define MacroFile linux.cf ++# undef linux ++# ifdef __linux__ ++# define LinuxArchitecture ++# endif ++# ifdef __GLIBC__ ++# define GNUArchitecture ++# endif ++# ifdef i386 ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef i386 ++XCOMM Keep cpp from replacing path elements containing i486/i586/i686 ++# ifdef i486 ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef i486 ++# endif ++# ifdef i586 ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef i586 ++# endif ++# ifdef i686 ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef i686 ++# endif ++# ifdef k6 ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef k6 ++# endif ++# endif /* k6 */ ++# ifdef __i386__ ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef __i386__ ++# endif /* __i386__ */ ++# ifdef __i486__ ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef __i486__ ++# endif /* __i486__ */ ++# ifdef __i586__ ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef __i586__ ++# endif /* __i586__ */ ++# ifdef __i686__ ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef __i686__ ++# endif /* __i686__ */ ++# ifdef __k6__ ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef __k6__ ++# endif /* __k6__ */ ++# ifdef __i386 ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef __i386 ++# endif /* __i386 */ ++# ifdef __i486 ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef __i486 ++# endif /* __i486 */ ++# ifdef __i586 ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef __i586 ++# endif /* __i586 */ ++# ifdef __i686 ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef __i686 ++# endif /* __i686 */ ++# ifdef __k6 ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef __k6 ++# endif /* __k6 */ ++/* Keep this order! s390x has also __s390__ defined */ ++# if defined(__s390x__) ++# define s390xArchitecture ++# undef __s390x__ ++# undef __s390__ ++# endif ++# ifdef __s390__ ++# define s390Architecture ++# undef __s390__ ++# endif /* s390 */ ++# ifdef __alpha ++# define AlphaArchitecture ++# undef __alpha ++# endif /* __alpha */ ++# ifdef __alpha__ ++# ifndef AlphaArchitecture ++# define AlphaArchitecture ++# endif ++# undef __alpha__ ++# endif /* __alpha__ */ ++# ifdef __arm__ ++# define Arm32Architecture ++# undef arm ++# undef __arm ++# undef __arm__ ++# if defined(__ARMEB__) ++# define Arm32ebArchitecture ++# endif ++# undef __ARMEB__ ++# endif ++# ifdef mc68000 ++# define Mc68020Architecture ++# undef mc68000 ++# endif /* mc68000 */ ++# if defined (powerpc) && !defined(__powerpc64__) && !defined (powerpc64) ++# define PpcArchitecture ++# undef powerpc ++# endif ++# if defined (__powerpc__) && !defined(__powerpc64__) && !defined (powerpc64) ++# ifndef PpcArchitecture ++# define PpcArchitecture ++# endif ++# undef __powerpc__ ++# endif ++# ifdef __powerpc64__ ++# ifndef Ppc64Architecture ++# define Ppc64Architecture ++# endif ++# undef __powerpc64__ ++# endif ++# ifdef sparc ++# define SparcArchitecture ++# undef sparc ++# endif ++# ifdef __sparc__ ++# ifndef SparcArchitecture ++# define SparcArchitecture ++# endif ++# undef __sparc__ ++# endif ++# ifdef ia64 ++# define ia64Architecture ++# undef ia64 ++# endif ++# ifdef __ia64__ ++# ifndef ia64Architecture ++# define ia64Architecture ++# endif ++# undef __ia64__ ++# endif ++# if defined(mips) || defined(__mips__) ++# define MipsArchitecture ++# undef mips ++# undef __mips__ ++# if defined(MIPSEL) || defined(_MIPSEL) ++# define MipselArchitecture ++# endif ++# undef MIPSEL ++# undef _MIPSEL ++# endif ++# ifdef __hppa__ ++# ifndef HPArchitecture ++# define HPArchitecture ++# endif ++# undef __hppa__ ++# endif /* __hppa__ */ ++# ifdef __sh__ ++# ifndef SuperHArchitecture ++# define SuperHArchitecture ++# endif ++# ifdef __BIG_ENDIAN__ ++# ifndef SuperHebArchitecture ++# define SuperHebArchitecture ++# endif ++# endif ++# undef __sh__ ++# endif /* __sh__ */ ++# if defined(__SH3__) || defined(__sh3__) ++# ifndef SuperH3Architecture ++# define SuperH3Architecture ++# endif ++# undef __SH3__ ++# undef __sh3__ ++# endif /* __SH3__ or __sh3__ */ ++# ifdef __SH4__ ++# ifdef __SH4_NOFPU__ ++# ifndef SuperH4NOFPUArchitecture ++# define SuperH4NOFPUArchitecture ++# endif ++# undef __SH4_NOFPU__ ++# else ++# ifndef SuperH4Architecture ++# define SuperH4Architecture ++# endif ++# endif ++# undef __SH4__ ++# endif /* __SH4__ */ ++/* for compatibility with 3.3.x */ ++# ifdef PpcArchitecture ++# define PowerPCArchitecture ++# endif ++# if defined(__s390x__) ++# define s390xArchitecture ++# undef __s390x__ ++# endif ++# if defined(__amd64__) || defined (__x86_64__) ++# undef __amd64__ ++# undef __x86_64__ ++# define AMD64Architecture ++# endif ++# if defined(amd64__) || defined (x86_64__) ++# undef amd64__ ++# undef x86_64__ ++# ifndef AMD64Architecture ++# define AMD64Architecture ++# endif ++# endif ++#endif /* linux || __GLIBC__ */ ++ ++#if (defined(__Lynx__) || defined(Lynx)) && (defined(i386) || defined(__i386__) || defined(__x86__) || defined(__powerpc__) || defined(__sparc__) || defined(sparc)) ++# define MacroIncludeFile ++# define MacroFile lynx.cf ++# define LynxOSArchitecture ++# undef __Lynx__ ++# undef Lynx ++# undef lynx ++# if defined(i386) || defined(__i386__) || defined(__x86__) ++# define i386Architecture ++# undef i386 ++# undef __i386__ ++# undef __x86__ ++# endif ++# ifdef __powerpc__ ++# define PpcArchitecture ++# undef __powerpc__ ++# endif ++# if defined(sparc) || defined(__sparc__) ++# define SparcArchitecture ++# undef sparc ++# undef __sparc__ ++# endif ++/* for compatibility with 3.3.x */ ++# ifdef PpcArchitecture ++# define PowerPCArchitecture ++# endif ++#endif /* LynxOS AT/PPC/microSPARC */ + + #ifdef __uxp__ +-#define MacroIncludeFile +-#define MacroFile fujitsu.cf +-#undef __uxp__ +-#ifdef sparc +-#undef sparc +-#define SparcArchitecture +-#endif ++# define MacroIncludeFile ++# define MacroFile fujitsu.cf ++# define FujitsuArchitecture ++# undef __uxp__ ++# define UXPArchitecture ++# define SVR4Architecture ++# ifdef sparc ++# undef sparc ++# define SparcArchitecture ++# endif + #endif /* __uxp__ */ + + #ifdef __sxg__ +-#define MacroIncludeFile +-#define MacroFile fujitsu.cf +-#undef __sxg__ +-#define mc68000Architecture ++# define MacroIncludeFile ++# define MacroFile fujitsu.cf ++# define FujitsuArchitecture ++# undef __sxg__ ++# define mc68000Architecture + #endif /* __sxg__ */ + +-#if defined(sequent) || defined(_SEQUENT_) ++#ifdef _SEQUENT_ ++/* undefine assignments resulting from -DSVR4 */ ++# undef MacroIncludeFile + # define MacroIncludeFile ++# undef MacroFile + # define MacroFile sequent.cf +-# ifdef sequent +-# undef sequent +-# define Dynix3Architecture +-# endif +-# ifdef _SEQUENT_ +-# undef _SEQUENT_ +-# define DynixPtxArchitecture +-# endif ++# undef _SEQUENT_ ++# define DynixPtxArchitecture + # define SequentArchitecture + #endif + + #if defined(_nec_ews_svr4) || defined(nec_ews_svr4) || defined(nec_ews_svr2) || defined(SX) || defined(_nec_up) || defined(_nec_ft) || defined(PC_UX) +-#ifdef nec +-#undef nec ++# ifdef nec ++# undef nec ++# endif ++# define MacroIncludeFile ++# define MacroFile nec.cf ++# define NecArchitecture ++#endif ++ ++#ifdef minix ++#define MacroIncludeFile ++#define MacroFile minix.cf ++#undef minix ++#define MinixArchitecture ++#define i386Architecture ++#endif /* minix */ ++ ++/* Systems with GNU libc and userland */ ++#if defined(__GNU__) ++#define GNUArchitecture ++#define MacroIncludeFile ++#define MacroFile gnu.cf ++#ifdef __i386__ ++#define i386Architecture + #endif +-#define MacroIncludeFile +-#define MacroFile nec.cf +-#define NecArchitecture + #endif + ++#ifdef MACH ++#ifdef __GNU__ ++/* Mach-based GNU system */ ++#define GNUMachArchitecture ++#else ++#define MacroIncludeFile ++#define MacroFile mach.cf ++#endif ++#undef MACH ++#ifdef i386 ++#define i386MachArchitecture ++#define i386Architecture ++#endif /* i386 */ ++#undef i386 ++#endif /* MACH */ ++ ++/* On NetBSD, `unix' is not defined, and cpp emits a warning every time ++ * it sees a test using the `unix' symbol */ ++#if !defined(NetBSDArchitecture) || (defined(NetBSDArchitecture) && DefaultOSMajorVersion == 1 && DefaultOSMinorVersion <= 3) + #ifdef unix + #undef unix +-#endif /* unix */ ++#endif ++#endif ++ ++#ifdef emxos2 ++#define MacroIncludeFile ++#define MacroFile os2.cf ++#define OS2Architecture ++#define i386Architecture ++#endif /* emxos2 */ ++ ++#if defined(__QNX__) && !defined(__QNXNTO__) ++#define MacroIncludeFile ++#define MacroFile QNX4.cf ++#define QNX4Architecture ++#define i386Architecture ++#endif /* QNX4 */ ++ ++#ifdef __QNXNTO__ ++#define MacroIncludeFile ++#define MacroFile nto.cf ++#define NTOArchitecture ++# ifdef PPC ++# define PPCArchitecture ++# undef PPC ++# endif ++# ifdef MIPS ++# define mipsArchitecture ++# undef MIPS ++# endif ++# ifdef i386 ++# define i386Architecture ++# undef i386 ++# endif /* i386 */ ++# ifdef __i386__ ++# ifndef i386Architecture ++# define i386Architecture ++# endif ++# undef __i386__ ++# endif /* __i386__ */ ++#endif /* QNX/Neutrino */ ++ ++#ifdef SparcArchitecture ++# if defined(__sparc_v9) || defined(__arch64__) ++# define Sparc64Architecture ++# endif ++#endif + + #ifndef MacroIncludeFile + XCOMM WARNING: Imake.cf not configured; guessing at definitions!!! +diff -urNad cernlib-2006.dfsg.2~/src/config/linux-lp64.cf cernlib-2006.dfsg.2/src/config/linux-lp64.cf +--- cernlib-2006.dfsg.2~/src/config/linux-lp64.cf 2006-12-20 06:21:03.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/config/linux-lp64.cf 2008-03-14 10:03:13.000000000 -0700 +@@ -153,7 +153,7 @@ + # define XargsCmd xargs + # define FortranSaveFlags -fno-automatic + # define OptimisedFortranFlags -O0 -g -funroll-loops -fomit-frame-pointer +-# define DefaultFCOptions -fno-second-underscore ++# define DefaultFCOptions -fno-automatic -fno-second-underscore + # define NoOpFortranDebugFlags -O0 + # define CernlibSystem -DCERNLIB_LINUX -DCERNLIB_UNIX -DCERNLIB_LNX -DCERNLIB_QMGLIBC -DCERNLIB_GFORTRAN -DCERNLIB_QMLXIA64 + +diff -urNad cernlib-2006.dfsg.2~/src/config/linux.cf cernlib-2006.dfsg.2/src/config/linux.cf +--- cernlib-2006.dfsg.2~/src/config/linux.cf 2006-09-15 02:34:48.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/config/linux.cf 2008-03-14 10:08:50.000000000 -0700 +@@ -68,20 +68,20 @@ + #define OSVendor /**/ + #define OSMajorVersion 2 + #define OSMinorVersion 4 +-#define OSTeenyVersion 2020 ++#define OSTeenyVersion 21 + + #undef unix /* GF. this is not needed anywhere */ + + #ifndef UseElfFormat +-#define UseElfFormat NO ++#define UseElfFormat YES + #endif + #define HasGcc2ForCplusplus YES + #define GccUsesGas YES + #define UseGas YES + #define GnuCpp YES +-#define HasShadowPasswd NO ++#define HasShadowPasswd YES + #ifndef HasLibCrypt +-# define HasLibCrypt NO ++# define HasLibCrypt YES + #endif + #define HasPutenv YES + #define HasShm YES +@@ -97,38 +97,308 @@ + #define NeedVarargsPrototypes YES + #define NeedWidePrototypes NO + ++/* The following modified to match (more or less) linux.cf in XFree86 4.3.0. ++ -- Kevin McCarty ++*/ ++ + #if UseElfFormat +-#define CcCmd gcc -b i486-linuxelf +-#define AsCmd /usr/i486-linuxelf/bin/as +-#define LdCmd ld -m elf_i386 +-#define AsmDefines -D__ELF__ +-#define CplusplusCmd g++ -b i486-linuxelf +-#else +-#define CcCmd gcc ++#ifdef MipsArchitecture ++#ifndef AsCmd ++#define AsCmd gcc -c -x assembler-with-cpp ++#endif ++#endif /* MipsArchitecture */ ++#ifndef CcCmd ++#define CcCmd gcc -g ++#endif ++#ifndef AsCmd + #define AsCmd as ++#endif ++#ifndef LdCmd + #define LdCmd ld +-#define AsmDefines -DUSE_GAS + #endif ++#define AsmDefines -D__ELF__ ++#define CplusplusCmd c++ -g ++#else /* no UseElfFormat */ ++#define CcCmd gcc -g ++#define AsCmd as ++#define LdCmd ld ++#define AsmDefines -DUSE_GAS -U__ELF__ ++#define CplusplusCmd g++ -g ++#endif /* UseElfFormat */ ++ ++#ifndef CppCmd + #define CppCmd /lib/cpp ++#endif + #define YaccCmd bison -y + #define LexCmd flex -l + #define LexLib -lfl + #define PreProcessCmd CcCmd -E + #define PostIncDir `CcCmd --print-libgcc-file-name | sed 's/libgcc.a/include/'` + #define LdCombineFlags -r +-#define OptimizedCDebugFlags -O2 -m486 -fno-strength-reduce\ +- -fomit-frame-pointer +-#define StandardDefines -Dlinux -D__i386__ -D_POSIX_SOURCE \ +- -D_BSD_SOURCE -D_GNU_SOURCE -DX_LOCALE ++#define LinuxSourceDefines -D_POSIX_SOURCE -D_BSD_SOURCE -D_GNU_SOURCE \ ++ -DX_LOCALE + #define XawI18nDefines -DUSE_XWCHAR_STRING -DUSE_XMBTOWC + #define HasWChar32 YES + #define StandardCppDefines -traditional StandardDefines +-#define ServerOSDefines XFree86ServerOSDefines -DDDXTIME ++#define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET + #define ExtensionOSDefines -DXTESTEXT1 +-#define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines ++/* #define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines */ + #define ConnectionFlags -DUNIXCONN -DTCPCONN + #define InstUidFlags -s -m 4755 + ++/* Arch-specific flags here copied from linux.cf for XFree86 4.3.0, ++ Debian patched (version 4.3.0.dfsg.1-4), plus additional ++ OptimizationLevel macro. ++ ++ Additional CERNLIB-specific per-architecture flags also added. ++ --Kevin McCarty */ ++ ++/* Note: we are now using CERNLIB_PPC as an endianness test (which is about ++ all that the CERNLIB source uses it for); I introduced a new define ++ CERNLIB_POWERPC for the three occasions when we specifically want to ++ test for powerpc chips. ++*/ ++ ++#ifdef i386Architecture ++# ifndef OptimizationLevel ++# define OptimizationLevel -O3 ++# endif ++# ifndef OptimizedCDebugFlags ++# define OptimizedCDebugFlags OptimizationLevel -fno-strength-reduce ++# endif ++# define LinuxMachineDefines -D__i386__ ++# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET ++# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines ++#endif /* i386Architecture */ ++ ++#ifdef s390Architecture ++# ifndef OptimizationLevel ++# define OptimizationLevel -O3 ++# endif ++# ifndef OptimizedCDebugFlags ++# define OptimizedCDebugFlags OptimizationLevel ++# endif ++# define LinuxMachineDefines -D__s390__ ++# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET ++# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines ++# define CernlibMachineDefines -DCERNLIB_PPC ++# define CERNLIB_PPC ++#endif /* s390Architecture */ ++ ++#ifdef s390xArchitecture ++/*#define DefaultCCOptions -fsigned-char */ ++#ifndef OptimizationLevel ++#define OptimizationLevel -O3 ++#endif ++#define OptimizedCDebugFlags OptimizationLevel ++#define LinuxMachineDefines -D__s390x__ ++#define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET ++#define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64 ++#define CernlibMachineDefines -DCERNLIB_PPC -DCERNLIB_QMLXIA64 ++#define CERNLIB_PPC ++#define CERNLIB_QMLXIA64 ++#endif /* s390xArchitecture */ ++ ++#ifdef AlphaArchitecture ++# ifndef OptimizationLevel ++# define OptimizationLevel -O3 ++# endif ++# ifndef OptimizedCDebugFlags ++# define OptimizedCDebugFlags OptimizationLevel ++# endif ++# define LinuxMachineDefines -D__alpha__ ++# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET ++# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64 -DJENSEN_SUPPORT ++# define CernlibMachineDefines -DCERNLIB_QMLXIA64 ++# define CERNLIB_QMLXIA64 ++# ifdef UseCompaqMathLibrary ++# define MathLibrary -lcpml -lm ++# endif ++#endif /* AlphaArchitecture */ ++ ++#ifdef Arm32Architecture ++# define DefaultCCOptions -fsigned-char ++# ifndef OptimizationLevel ++# define OptimizationLevel -O2 ++# endif ++# ifndef OptimizedCDebugFlags ++# define OptimizedCDebugFlags OptimizationLevel ++# endif ++# define LinuxMachineDefines -D__arm__ -D__arm32__ -U__arm -Uarm ++# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET ++# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines ++# if defined(__ARMEB__) || defined(Arm32ebArchitecture) ++ /* test for big-endianness */ ++# define CernlibMachineDefines -DCERNLIB_PPC ++# define CERNLIB_PPC ++# endif ++#endif /* Arm32Achitecture */ ++ ++#ifdef ia64Architecture ++# ifndef OptimizationLevel ++# define OptimizationLevel -O2 ++# endif ++# ifndef OptimizedCDebugFlags ++# define OptimizedCDebugFlags OptimizationLevel ++# endif ++# define LinuxMachineDefines -D__ia64__ ++# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET ++# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64 ++# define CernlibMachineDefines -DCERNLIB_QMLXIA64 ++# define CERNLIB_QMLXIA64 ++#endif /* ia64Architecture */ ++ ++#ifdef Mc68020Architecture ++# ifndef OptimizationLevel ++# define OptimizationLevel -O3 ++# endif ++# ifndef OptimizedCDebugFlags ++# define OptimizedCDebugFlags OptimizationLevel ++# endif ++# define DefaultCCOptions -malign-int ++# define DefaultFCOptions -malign-int -fno-automatic \ ++ -fno-second-underscore ++# define LinuxMachineDefines -D__mc68000__ ++# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET ++# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines ++# define CernlibMachineDefines -DCERNLIB_PPC ++# define CERNLIB_PPC ++# define CERNLIB_M68K ++/* # define PositionIndependentCplusplusFlags -fpic */ ++#endif /* Mc68020Architecture */ ++ ++#if defined(PpcArchitecture) || defined(Ppc64Architecture) ++# define DefaultCCOptions -fsigned-char ++# ifndef OptimizationLevel ++# define OptimizationLevel -O3 ++# endif ++# ifndef OptimizedCDebugFlags ++# define OptimizedCDebugFlags OptimizationLevel ++# endif ++# define LinuxMachineDefines -D__powerpc__ ++# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET ++# ifdef Ppc64Architecture ++# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64 ++# define CernlibMachineDefines -DCERNLIB_PPC -DCERNLIB_POWERPC \ ++ -DCERNLIB_QMLXIA64 ++# define CERNLIB_QMLXIA64 ++# else ++# define CernlibMachineDefines -DCERNLIB_PPC -DCERNLIB_POWERPC ++# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines ++# endif ++# define CERNLIB_PPC ++# define CERNLIB_POWERPC ++#endif /* PpcArchitecture || Ppc64Architecture */ ++ ++#ifdef SparcArchitecture ++# ifndef OptimizationLevel ++# define OptimizationLevel -O3 ++# endif ++# ifndef OptimizedCDebugFlags ++# define OptimizedCDebugFlags OptimizationLevel ++# endif ++# define LinuxMachineDefines -D__sparc__ ++# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET ++# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines ++# define AsVISOption -Av9a ++# ifdef Sparc64Architecture ++# define AsOutputArchSize 64 ++# define CernlibMachineDefines -DCERNLIB_PPC -DCERNLIB_QMLXIA64 ++# define CERNLIB_QMLXIA64 ++# else ++# define AsOutputArchSize 32 ++# define CernlibMachineDefines -DCERNLIB_PPC ++# endif ++# define CERNLIB_PPC ++#endif ++ ++#ifdef MipsArchitecture ++# ifndef OptimizationLevel ++# define OptimizationLevel -O2 ++# endif ++# ifndef OptimizedCDebugFlags ++# define OptimizedCDebugFlags OptimizationLevel ++# endif ++# define LinuxMachineDefines -D__mips__ ++# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET ++# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines ++# if !defined(MipselArchitecture) /* then big-endian, i.e. mips */ ++# define CernlibMachineDefines -DCERNLIB_PPC ++# define CERNLIB_PPC ++# endif ++#endif ++ ++#ifdef HPArchitecture ++# ifndef OptimizationLevel ++# define OptimizationLevel -O3 ++# endif ++# define OptimizedCDebugFlags OptimizationLevel ++# define LinuxMachineDefines -D__hppa__ ++# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET ++# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines ++# define CernlibMachineDefines -DCERNLIB_PPC ++# define CERNLIB_PPC ++#endif ++ ++#ifdef SuperHArchitecture ++# ifndef SuperHArchOptFlags ++# ifdef SuperH4Architecture ++# define SuperHArchOptFlags -m4 ++# elif defined(SuperH4NOFPUArchitecture) ++# define SuperHArchOptFlags -m4-nofpu ++# else ++# define SuperHArchOptFlags -m3 ++# endif ++# endif ++# ifndef SuperHebArchitecture ++# ifdef SuperHebArchitecture ++# define SuperHEndianFlags -mb ++# define CernlibMachineDefines -DCERNLIB_PPC ++# define CERNLIB_PPC ++# else ++# define SuperHEndianFlags -ml ++# endif ++# endif ++# ifndef OptimizationLevel ++# define OptimizationLevel -O3 ++# endif ++# ifndef OptimizedCDebugFlags ++# define OptimizedCDebugFlags OptimizationLevel SuperHArchOptFlags SuperHEndianFlags ++# endif ++# define LinuxMachineDefines -D__sh__ ++# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET ++# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines ++#endif ++ ++#ifdef AMD64Architecture ++# ifndef OptimizationLevel ++# define OptimizationLevel -O3 ++# endif ++# ifndef OptimizedCDebugFlags ++# define OptimizedCDebugFlags OptimizationLevel ++# endif ++# define LinuxMachineDefines -D__x86_64__ ++# define ServerOSDefines XFree86ServerOSDefines -DDDXTIME -DPART_NET ++# define ServerExtraDefines -DGCCUSESGAS XFree86ServerDefines -D_XSERVER64 ++# define CernlibMachineDefines -DCERNLIB_QMLXIA64 ++# define CERNLIB_QMLXIA64 ++#endif /* AMD64Architecture */ ++ ++#ifndef StandardDefines ++# define StandardDefines -Dlinux LinuxMachineDefines LinuxSourceDefines ++#endif ++ ++#ifndef CernlibMachineDefines ++#define CernlibMachineDefines ++#endif ++ ++#ifndef CernlibLocalDefines ++#define CernlibLocalDefines ++#endif ++ ++#define CernlibDefaultDefines -DCERNLIB_LINUX -DCERNLIB_UNIX -DCERNLIB_LNX \ ++ -DCERNLIB_QMGLIBC ++ + /* Some of these man page defaults are overriden in the above OS sections */ + #ifndef ManSuffix + # define ManSuffix 1x +@@ -163,7 +433,7 @@ + #define FortranSaveFlags /* */ /* Everything static !? */ + #define OptimisedFortranFlags -g -pc 64 -tp p6 + #define DefaultFCOptions -Msave -fpic -Kieee +-#define CernlibSystem -DCERNLIB_LINUX -DCERNLIB_UNIX -DCERNLIB_LNX -DCERNLIB_QMGLIBC -DCERNLIB_QFPGF77 ++#define CernlibSystem CernlibDefaultDefines -DCERNLIB_QFPGF77 + + #else + +@@ -174,19 +444,18 @@ + # undef StandardDefines + # undef NeedFunctionPrototypes + # undef NeedWidePrototypes +-# define CcCmd icc +-# define DefaultCCOptions +-# define OptimizedCDebugFlags -O +- +-# define FortranDoesCpp NO +-#define FortranCppCmd /usr/bin/cpp -traditional -C +-# define FortranCmd ifc +-# define XargsCmd xargs +-# define FortranSaveFlags -save +-# define OptimisedFortranFlags -O -mp1 -fp_port +-# define NoOpFortranDebugFlags -O0 +-# define DefaultFCOptions +-# define CernlibSystem -DCERNLIB_LINUX -DCERNLIB_UNIX -DCERNLIB_LNX -DCERNLIB_QMGLIBC ++# define CcCmd icc ++# define DefaultCCOptions ++# define OptimizedCDebugFlags -O ++# define FortranDoesCpp NO ++# define FortranCppCmd /usr/bin/cpp -traditional -C ++# define FortranCmd ifort ++# define XargsCmd xargs ++# define FortranSaveFlags -save ++# define OptimisedFortranFlags -O -mp1 -fp_port ++# define NoOpFortranDebugFlags -O0 ++# define DefaultFCOptions ++# define CernlibSystem CernlibDefaultDefines + + #else + +@@ -197,19 +466,18 @@ + # undef StandardDefines + # undef NeedFunctionPrototypes + # undef NeedWidePrototypes +-# define CcCmd ecc +-# define DefaultCCOptions -KPIC +-# define OptimizedCDebugFlags -O +- +-# define FortranDoesCpp NO +-#define FortranCppCmd /lib/cpp -traditional -C +-# define FortranCmd efc +-# define XargsCmd xargs +-# define FortranSaveFlags -save +-# define OptimisedFortranFlags -O +-# define DefaultFCOptions -KPIC +-# define CernlibSystem -DCERNLIB_LINUX -DCERNLIB_UNIX -DCERNLIB_LNX -DCERNLIB_QMGLIBC +-# define CERNLIB_SHIFT NO ++# define CcCmd ecc ++# define DefaultCCOptions -KPIC ++# define OptimizedCDebugFlags -O ++# define FortranDoesCpp NO ++# define FortranCppCmd /lib/cpp -traditional -C ++# define FortranCmd efc ++# define XargsCmd xargs ++# define FortranSaveFlags -save ++# define OptimisedFortranFlags -O ++# define DefaultFCOptions -KPIC ++# define CernlibSystem CernlibDefaultDefines ++# define CERNLIB_SHIFT NO + /* + * Create a Make Variable to allow building with/out Motif + */ +@@ -222,25 +490,30 @@ + #else + + # ifdef Hasgfortran +-# undef CcCmd +-# undef DefaultCCOptions +-# undef OptimizedCDebugFlags + # undef StandardDefines + # undef NeedFunctionPrototypes + # undef NeedWidePrototypes +-# define CcCmd gcc4 +-# define DefaultCCOptions +-# define OptimizedCDebugFlags -O -g -fomit-frame-pointer ++# ifndef DefaultCCOptions ++# define DefaultCCOptions ++# endif ++# ifndef OptimizedCDebugFlags ++# define OptimizedCDebugFlags OptimizationLevel DefaultCCOptions ++# endif + + # define FortranDoesCpp YES + # define f2cFortran YES +-# define FortranCmd gfortran ++# define gFortran YES ++# define FortranCmd gfortran -g + # define XargsCmd xargs + # define FortranSaveFlags -fno-automatic +-# define OptimisedFortranFlags -O0 -g -funroll-loops -fomit-frame-pointer +-# define DefaultFCOptions -fno-second-underscore ++# define OptimisedFortranFlags OptimizedCDebugFlags /* -funroll-loops */ ++/* Remove -fomit-frame-pointer since -O implies it and it inhibits debugging */ ++# ifndef DefaultFCOptions ++# define DefaultFCOptions -fno-range-check -fno-automatic -fno-second-underscore ++# endif + # define NoOpFortranDebugFlags -O0 +-# define CernlibSystem -DCERNLIB_LINUX -DCERNLIB_UNIX -DCERNLIB_LNX -DCERNLIB_QMGLIBC -DCERNLIB_GFORTRAN ++# define CernlibSystem CernlibDefaultDefines CernlibMachineDefines \ ++ CernlibLocalDefines -DCERNLIB_GFORTRAN + + #define CERNLIB_GFORTRAN + +@@ -249,17 +522,32 @@ + /* Start CERNLIB changes A.Waananen 15. Apr. 1996 */ + /* Adapted to CERN style GF. 20-Sep-96 */ + ++/* + # undef DefaultCCOptions + # undef OptimizedCDebugFlags + # undef StandardDefines + # define OptimizedCDebugFlags -O1 -fomit-frame-pointer ++*/ ++ ++#ifndef DefaultCCOptions ++# define DefaultCCOptions ++#endif ++#ifndef OptimizedCDebugFlags ++# define OptimizedCDebugFlags OptimizationLevel DefaultCCOptions ++#endif + + #define f2cFortran YES +-#define FortranCmd g77 ++#define FortranCmd g77 -g + #define XargsCmd xargs + #define FortranSaveFlags /* */ /* Everything static !? */ +-#define DefaultFCOptions -fno-automatic -fno-second-underscore -fugly-complex +-#define CernlibSystem -DCERNLIB_LINUX -DCERNLIB_UNIX -DCERNLIB_LNX -DCERNLIB_QMGLIBC ++#define OptimisedFortranFlags OptimizedCDebugFlags -funroll-loops ++/* Remove -fomit-frame-pointer since -O implies it and it inhibits debugging */ ++#ifndef DefaultFCOptions ++# define DefaultFCOptions -fno-automatic -fno-second-underscore \ ++ -fugly-complex ++#endif ++#define CernlibSystem CernlibDefaultDefines CernlibMachineDefines \ ++ CernlibLocalDefines + + # endif + # endif +@@ -280,7 +568,7 @@ + /* + * Create a Make Variable to allow building with/out Motif + */ +- ++#define MotifDependantMakeVar(variable,value) variable=value + + /* End CERNLIB changes */ + --- cernlib-2006.dfsg.2.orig/debian/patches/211-support-digital-alpha.dpatch +++ cernlib-2006.dfsg.2/debian/patches/211-support-digital-alpha.dpatch @@ -0,0 +1,34 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 211-support-digital-alpha.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Try to also support alpha architecture in chkloc() + +@DPATCH@ +diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/lp64gs/chkloc.c cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/lp64gs/chkloc.c +--- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/lp64gs/chkloc.c 2006-09-06 20:48:39.151588934 -0400 ++++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/lp64gs/chkloc.c 2006-09-06 20:53:30.206708584 -0400 +@@ -35,13 +35,20 @@ + data segments upwards. All addresses here are expected to be in + the data segment area. */ + ++ /* K. McCarty: On Alpha, on the other hand, I couldn't find any docs for the ++ Linux segmentation for virtual memory. Judging by a test machine ++ (escher.debian.org), the data section starts slightly above 0x120010000. ++ On the other hand the stack grows downward from 0x120000000. */ ++ + const unsigned long mask=0xffffffff00000000; + static unsigned long limit=0x00000000ffffffff; + unsigned long jadr=((unsigned long) iadr & mask); +-#if !defined (__ia64__) +- if ( jadr != 0x0000000000000000) { +-#else ++#if defined (__ia64__) + if ( jadr != 0x6000000000000000) { ++#elif defined (__alpha__) ++ if ( jadr != 0x0000000100000000) { ++#else /* amd64 or ppc64 */ ++ if ( jadr != 0) { + #endif + fprintf(stderr, "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n"); + fprintf(stderr, "LOCB/LOCF: address %p exceeds the 32 bit address space\n", iadr); --- cernlib-2006.dfsg.2.orig/debian/patches/123-extern-memmove-only-if-not-macro.dpatch +++ cernlib-2006.dfsg.2/debian/patches/123-extern-memmove-only-if-not-macro.dpatch @@ -0,0 +1,21 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 123-extern-memmove-only-if-not-macro.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Declare memmove() only if it is not already defined as a macro. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/kuip/kstring.h cernlib-2006.dfsg.2/src/packlib/kuip/kuip/kstring.h +--- cernlib-2006.dfsg.2~/src/packlib/kuip/kuip/kstring.h 2007-04-21 19:21:26.000000000 -0400 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/kuip/kstring.h 2007-04-21 19:22:20.000000000 -0400 +@@ -21,8 +21,10 @@ + */ + + #ifndef WIN32 ++#ifndef memmove + extern void* memmove( void* dst, const void* src, size_t n ); + #endif ++#endif + + /* GF. make conform to kkern.c#if !defined(__convexc__)*/ + #ifndef HAVE_STRCASECMP --- cernlib-2006.dfsg.2.orig/debian/patches/209-ignore-unneeded-headers-in-kmutil.c.dpatch +++ cernlib-2006.dfsg.2/debian/patches/209-ignore-unneeded-headers-in-kmutil.c.dpatch @@ -0,0 +1,27 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 209-ignore-unneeded-headers-in-kmutil.c.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Comment out header files not actually needed in kmutil.c. +## DP: (This will be helpful when we move this file elsewhere to be part of +## DP: the Lesstif-dependent library split out from packlib.) + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/packlib/kuip/code_motif/kmutil.c /tmp/dpep.BncUU7/cernlib-2005.05.09/src/packlib/kuip/code_motif/kmutil.c +--- cernlib-2005.05.09~/src/packlib/kuip/code_motif/kmutil.c 1996-03-08 10:33:09.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/kuip/code_motif/kmutil.c 2005-06-10 12:06:07.198547576 -0400 +@@ -20,12 +20,13 @@ + /******************************************************************************/ + + #include "kuip/kuip.h" ++/* commented out, since this file doesn't need these includes. --Kevin McCarty + #include "kuip/kfor.h" + #include "kuip/kmenu.h" + + #include "mkutda.h" + #include "kuip/mkutfu.h" +- ++*/ + + /*********************************************************************** + * * --- cernlib-2006.dfsg.2.orig/debian/patches/115-rsrtnt64-goto-outer-block.dpatch +++ cernlib-2006.dfsg.2/debian/patches/115-rsrtnt64-goto-outer-block.dpatch @@ -0,0 +1,135 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 115-rsrtnt64-goto-outer-block.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Avoid weird jump assignments on g77/ia64 as well as with gfortran +## DP: to avoid breakage during linking step on Itanium. +## DP: Also, following Harald Vogt, change indicators of line continuation +## DP: from "1" -> "&" to be compatible with gfortran. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg~/src/mathlib/gen/b/rsrtnt64.F cernlib-2006.dfsg/src/mathlib/gen/b/rsrtnt64.F +--- cernlib-2006.dfsg~/src/mathlib/gen/b/rsrtnt64.F 2006-09-15 05:34:52.000000000 -0400 ++++ cernlib-2006.dfsg/src/mathlib/gen/b/rsrtnt64.F 2007-01-09 16:27:13.488797346 -0500 +@@ -56,7 +56,7 @@ + IF(LLL) GO TO 9 + + LLL=K .GE. 0 .OR. K .EQ. -1 .AND. U*V .NE. 0 +- 1 .OR. K .LE. -2 .AND. U*V .GT. 0 ++ & .OR. K .LE. -2 .AND. U*V .GT. 0 + IF(.NOT.LLL) GO TO 9 + + DELTA=4*A*C-B**2 +@@ -120,7 +120,7 @@ + ENDIF + ELSE + IF(N .EQ. 1) THEN +-#if !defined(CERNLIB_GFORTRAN) ++#if (!defined(CERNLIB_GFORTRAN)) && !defined(__ia64__) + ASSIGN 11 TO JMP1 + GO TO 10 + #else +@@ -141,7 +141,7 @@ + G2=A*C + H3=G1-16*G2 + H=(((H1*V-H2)*V+H3)*RT(V)-((H1*U-H2)*U+H3)*RT(U)- +- 1 (HF*G1-18*G2)*B*H)/(24*C**3) ++ & (HF*G1-18*G2)*B*H)/(24*C**3) + ENDIF + ELSE + IF(DELTA .EQ. 0) THEN +@@ -181,7 +181,7 @@ + H=2*((H1+B*U)/RT(U)-(H1+B*V)/RT(V))/DELTA + LB1=11 + ELSEIF(K .EQ. 2) THEN +-#if !defined(CERNLIB_GFORTRAN) ++#if (!defined(CERNLIB_GFORTRAN)) && !defined(__ia64__) + ASSIGN 12 TO JMP1 + GO TO 10 + #else +@@ -191,7 +191,7 @@ + H2=2*A*B + H=(((H1*U-H2)/RT(U)-(H1*V-H2)/RT(V))/DELTA+H)/C + ELSEIF(K .EQ. 3) THEN +-#if !defined(CERNLIB_GFORTRAN) ++#if (!defined(CERNLIB_GFORTRAN)) && !defined(__ia64__) + ASSIGN 13 TO JMP1 + GO TO 10 + #else +@@ -203,7 +203,7 @@ + H2=B*(10*G1-G2) + H3=A*(8*G1-G2) + H=(2*(((H1*V+H2)*V+H3)/RT(V)-((H1*U+H2)*U+H3)/RT(U))/ +- 1 DELTA-3*B*H)/(2*C**2) ++ & DELTA-3*B*H)/(2*C**2) + ENDIF + ENDIF + ENDIF +@@ -232,7 +232,7 @@ + ENDIF + ELSE + IF(N .EQ. 1) THEN +-#if !defined(CERNLIB_GFORTRAN) ++#if (!defined(CERNLIB_GFORTRAN)) && !defined(__ia64__) + ASSIGN 21 TO JMP2 + GO TO 20 + #else +@@ -246,7 +246,7 @@ + H1=6*B + H2=4*A + H=((H1*V-H2)*RT(V)/V**2-(H1*U-H2)*RT(U)/U**2+ +- 1 (3*B**2-H2*C)*H)/(8*A**2) ++ & (3*B**2-H2*C)*H)/(8*A**2) + ENDIF + ELSE + IF(DELTA .EQ. 0) THEN +@@ -276,7 +276,7 @@ + IF(U. LT. -X0) H=-H + ENDIF + ELSE +-#if !defined(CERNLIB_GFORTRAN) ++#if (!defined(CERNLIB_GFORTRAN)) && !defined (__ia64__) + ASSIGN 22 TO JMP2 + GO TO 20 + #else +@@ -293,7 +293,7 @@ + H2=(G1-10*G2)*B + H3=A*DELTA + H=(((H1*V+H2-H3/V)/RT(V)-(H1*U+H2-H3/U)/RT(U))/DELTA +- 1 -3*HF*B*H)/A**2 ++ & -3*HF*B*H)/A**2 + ELSEIF(K .EQ. -3) THEN + G1=A*DELTA + G2=A*C +@@ -304,19 +304,19 @@ + H3=(G4-62*G2)*G3+24*G2**2 + H4=B*C*(G4-52*G2) + H=((((H2-H1/V)/V-H3-H4*V)/RT(V)-((H2-H1/U)/U-H3-H4*U)/RT(U)) +- 1 /DELTA+HF*(G4-12*G2)*H)/(4*A**3) ++ & /DELTA+HF*(G4-12*G2)*H)/(4*A**3) + ENDIF + ENDIF + ENDIF + ENDIF + ENDIF +-#if !defined(CERNLIB_GFORTRAN) ++#if (!defined(CERNLIB_GFORTRAN)) && !defined(__ia64__) + GO TO 9 + + 10 C2=2*C + IF(DELTA .GT. 0 .OR. DELTA .LT. 0 .AND. C .GT. 0) THEN + H=LOG(ABS((2*SQRT(C*P(V))+C2*V+B)/ +- 1 (2*SQRT(C*P(U))+C2*U+B)))/SQRT(C) ++ & (2*SQRT(C*P(U))+C2*U+B)))/SQRT(C) + ELSEIF(DELTA .EQ. 0) THEN + H=ABS(LOG(ABS((C2*V+B)/(C2*U+B))))/SQRT(C) + ELSE +@@ -341,7 +341,7 @@ + A2=2*A + IF(DELTA .GT. 0 .OR. DELTA .LT. 0 .AND. A .GT. 0) THEN + H=LOG(ABS((-2*SQRT(A*P(V))+B*V+A2)*U/ +- 1 ((-2*SQRT(A*P(U))+B*U+A2)*V)))/SQRT(A) ++ & ((-2*SQRT(A*P(U))+B*U+A2)*V)))/SQRT(A) + ELSEIF(DELTA .EQ. 0) THEN + H=LOG(ABS((B*U+A2)*V/((B*V+A2)*U)))/SQRT(A) + IF(U*V .GT. 0) H=SIGN(H,U) --- cernlib-2006.dfsg.2.orig/debian/patches/701-patch-hbook-comis-Imakefiles.dpatch +++ cernlib-2006.dfsg.2/debian/patches/701-patch-hbook-comis-Imakefiles.dpatch @@ -0,0 +1,22 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 701-patch-hbook-comis-Imakefiles.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix up makefiles after moving hkfill.F and hkf1q.F in the other +## DP: 701 dpatch (a shell script). + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/hbook/code/Imakefile cernlib-2005.05.09.dfsg/src/packlib/hbook/code/Imakefile +--- cernlib-2005.05.09.dfsg~/src/packlib/hbook/code/Imakefile 1997-09-02 09:09:01.000000000 -0400 ++++ cernlib-2005.05.09.dfsg/src/packlib/hbook/code/Imakefile 2005-12-07 14:59:31.519940694 -0500 +@@ -19,8 +19,8 @@ + hgn.F hgnf.F hgnpar.F hgstat.F hhipar.F hhxye.F hi.F \ @@\ + hictoi.F hid1.F hid2.F hidall.F hidopt.F hidpos.F hie.F \ @@\ + hif.F hij.F hije.F hijxy.F hindex.F hinprx.F hinteg.F \ @@\ +- hipak1.F histdo.F histgo.F hix.F hkf1.F hkf1q.F hkf2.F \ @@\ +- hkff1.F hkff2.F hkffi1.F hkfi1.F hkfil2.F hkfill.F hkfilpf.F \ @@\ ++ hipak1.F histdo.F histgo.F hix.F hkf1.F hkf2.F \ @@\ ++ hkff1.F hkff2.F hkffi1.F hkfi1.F hkfil2.F hkfilpf.F \ @@\ + hkind.F hknul1.F hknuli.F hlabel.F hlabeq.F hlabnb.F \ @@\ + hlattr.F hlccmp.F hldir.F hldir1.F hldir2.F hldirt.F \ @@\ + hlgnxt.F hlhcmp.F hlimit.F hllsq.F hlnext.F hlocat.F \ @@\ --- cernlib-2006.dfsg.2.orig/debian/patches/700-remove-kernlib-from-packlib-Imakefile.dpatch +++ cernlib-2006.dfsg.2/debian/patches/700-remove-kernlib-from-packlib-Imakefile.dpatch @@ -0,0 +1,55 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 700-remove-kernlib-from-packlib-Imakefile.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Patch packlib Imakefile after moving kernlib out of tree. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/Imakefile /tmp/dpep.VNPUUt/cernlib-2005.05.09/src/Imakefile +--- cernlib-2005.05.09~/src/Imakefile 2005-06-10 16:46:36.495568752 -0400 ++++ cernlib-2005.05.09/src/Imakefile 2005-06-10 16:50:33.508709032 -0400 +@@ -2,7 +2,7 @@ + #define PassCDebugFlags + + +-LIBDIRS= packlib graflib mathlib ++LIBDIRS= kernlib packlib graflib mathlib + + SUBDIRS= $(LIBDIRS) patchy cfortran + +@@ -23,5 +23,5 @@ + DelegateTarget(bin/kuipc,packlib) + + DelegateTarget(lib/packlib,packlib) +-DelegateTarget(lib/kernlib,packlib) ++DelegateTarget(lib/kernlib,kernlib) + +diff -urNad cernlib-2005.05.09/src/packlib/Imakefile /tmp/dpep.VNPUUt/cernlib-2005.05.09/src/packlib/Imakefile +--- cernlib-2005.05.09~/src/packlib/Imakefile 1997-10-02 10:09:19.000000000 -0400 ++++ cernlib-2005.05.09/src/packlib/Imakefile 2005-06-10 16:48:25.928085636 -0400 +@@ -4,7 +4,7 @@ + + + LIBDIRS= cspack epio fatmen ffread hbook hepdb kapack kuip \ @@\ +- minuit zbook zebra kernlib ++ minuit zbook zebra + + SUBDIRS= $(LIBDIRS) + +@@ -17,14 +17,10 @@ + + TestSubdirs($(LIBDIRS)) + +-#ifndef CERNLIB_VAXVMS +- +-InstallLibSubdirs(kernlib) +- +-#else ++#ifdef CERNLIB_VAXVMS + + SUBDIRS := $(SUBDIRS) vmslibfiles +-InstallLibSubdirs(kernlib vmslibfiles) ++InstallLibSubdirs(vmslibfiles) + + #endif + --- cernlib-2006.dfsg.2.orig/debian/patches/111-fix-kuesvr-install-location.dpatch +++ cernlib-2006.dfsg.2/debian/patches/111-fix-kuesvr-install-location.dpatch @@ -0,0 +1,16 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 111-fix-kuesvr-install-location.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix install location of kuesvr binary. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/packlib/kuip/programs/kuesvr/Imakefile /tmp/dpep.ZmakmH/cernlib-2005.05.09/src/packlib/kuip/programs/kuesvr/Imakefile +--- cernlib-2005.05.09~/src/packlib/kuip/programs/kuesvr/Imakefile 1996-03-11 10:43:22.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/kuip/programs/kuesvr/Imakefile 2005-06-10 12:03:32.706178628 -0400 +@@ -1,4 +1,4 @@ + + NormalProgramTarget(kuesvr,kuesvr.o,NullParameter,NullParameter,NullParameter) + +-InstallProgram(kuesvr,$(CERN)/$(CERN_LEVEL)/bin) ++InstallProgram(kuesvr,$(CERN_BINDIR)) --- cernlib-2006.dfsg.2.orig/debian/patches/README +++ cernlib-2006.dfsg.2/debian/patches/README @@ -0,0 +1,76 @@ +Notes on Debian patches to CERNLIB source: +------------------------------------------ + +All patches in this directory are, unless otherwise specified in the patch +header, copyright 2001-2005 Kevin B. McCarty and are licensed under the GNU +General Public License version 2 or later, at your option. The GNU GPL may be +found at http://www.gnu.org/licenses/gpl.html or, on Debian systems, at +/usr/share/common-licenses/GPL . + +Dpatch is used because some of the files in this directory are really +shell scripts, and no other patch system (quilt, cdbs, etc.) appears to +support this. (Am I the only person using this "feature" of dpatch?) +Dpatch files that are really patches are named NNN-.dpatch +while dpatch files that are shell scripts are named NNN-.sh.dpatch +NNN is a three digit number ranging from 000 through 999. + +Note that, contrary to the usual practice, the file debian/patches/00list +(listing the patches to be applied) is auto-generated by "debian/rules clean", +and may be further modified in the stampdir/configure-stamp target of the +debian/add-ons/Makefile (called from "debian/rules unpack") depending upon +settings in $DEB_BUILD_OPTIONS. See debian/README.source for a list of +supported $DEB_BUILD_OPTIONS parameters. + +A few of the patches (*.dpatch.in) include values that need to be filled in +at configure time; this is also done in the stampdir/configure-stamp target of +debian/add-ons/Makefile. + +(You do not _really_ need dpatch to work with these patches; they are applied +for non-Debian systems in a hacky way by the patch target of +debian/add-ons/Makefile.) + +The numbering scheme of patches in this directory is as follows: + +000 is a dummy patch used to force dpatch-edit-patch to create diffs + relative to already-unpacked source. It has no effect when "applied" + or "de-applied" against an unpacked source tree. +001-099 are reserved for patches that permit compilation after having + removed non-free code from CERNLIB source. +100-199 are for bug fixes that should eventually be submitted upstream + and have a reasonable probability of being merged, for instance, + security bugs, file-specific compiler optimization settings, etc. +200-299 are for feature enhancements that should eventually be submitted + upstream, for example, including ERTRAK code in libgeant. +300-399 are for implementation of non-Debian-specific niceties that are + probably too intrusive to go upstream, for instance FHS implementation + or use of shadow passwords by pawserv. +400-599 are reserved for future use. +600-699 are for Debian-specific customizations, for instance setting the + default editor as sensible-editor, having Paw send bug reports + to the BTS, etc. Most of these are protected by + "#if defined(CERNLIB_DEBIAN)" in the source code so they can be safely + applied on non-Debian systems. +700-799 are for patches that move source code around. Many of these are + actually shell scripts. Typically this is done to split + libraries apart or to move functions from one library into another. +800-899 are for implementation of shared libraries. (They must be implemented + only after moving files around, or they have many undefined symbol + problems.) +900-999 are for optional patches that may or may not be applied depending + upon settings in $DEB_BUILD_OPTIONS. These patches are stored + in the "optional" subdirectory, copied here in the "unpack" target + of debian/rules or add-ons/Makefile, and removed in the "clean" + target. + +Ideally, the source should compile with any complete set of the +patches numbered 000 through NNN (where NNN is 100 or greater) applied, +possibly excluding patches in the 9xx series. (All patches with the same +number must be applied or not, as a whole.) Unfortunately this does not +actually work when linking the Paw and Paw++ programs since some of the +libraries have circular dependencies on each other before the 700 series +of patches are applied. + +To select the set of patches to be applied, after running debian/rules clean, +edit debian/patches/00list to include only the desired ones. + +-- Kevin B. McCarty , 21 Jul 2005 --- cernlib-2006.dfsg.2.orig/debian/patches/105-fix-obsolete-xmfontlistcreate-warning.dpatch +++ cernlib-2006.dfsg.2/debian/patches/105-fix-obsolete-xmfontlistcreate-warning.dpatch @@ -0,0 +1,32 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 105-fix-obsolete-xmfontlistcreate-warning.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix Lesstif warning about use of obsolete XmFontListCreate() function + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/packlib/kuip/code_motif/mkuip.c /tmp/dpep.kv7bf1/cernlib-2005.05.09/src/packlib/kuip/code_motif/mkuip.c +--- cernlib-2005.05.09~/src/packlib/kuip/code_motif/mkuip.c 1996-10-24 08:13:41.000000000 -0400 ++++ cernlib-2005.05.09/src/packlib/kuip/code_motif/mkuip.c 2005-06-09 14:39:00.831812710 -0400 +@@ -776,6 +776,7 @@ + ***********************************************************************/ + static void init_data () + { ++ /* This function edited not to use obsolete function XmFontListCreate() */ + int k; + + km_charset = XmSTRING_DEFAULT_CHARSET; +@@ -792,8 +793,11 @@ + if (help_font_struct == NULL) + printf ("%s Warning: Font loaded for HELP (%s) is NULL \n", + main_prompt, srec.Help_font); +- else +- help_font = XmFontListCreate (help_font_struct,km_charset); ++ else { ++ XmFontListEntry entry = XmFontListEntryCreate( ++ km_charset, XmFONT_IS_FONT, (XtPointer)help_font_struct ); ++ help_font = XmFontListAppendEntry( NULL, entry ); ++ } + } + + /* --- cernlib-2006.dfsg.2.orig/debian/patches/806-bump-mathlib-and-dependents-sonames.dpatch +++ cernlib-2006.dfsg.2/debian/patches/806-bump-mathlib-and-dependents-sonames.dpatch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 806-bump-mathlib-and-dependents-sonames.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Bump so versions of mathlib and dependents since it is now compiled +## DP: against liblapack3 instead of liblapack2. + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/mathlib/Imakefile cernlib-2005.05.09.dfsg/src/mathlib/Imakefile +--- cernlib-2005.05.09.dfsg~/src/mathlib/Imakefile 2005-11-23 15:49:19.723162159 +0000 ++++ cernlib-2005.05.09.dfsg/src/mathlib/Imakefile 2005-11-23 15:49:27.431512287 +0000 +@@ -2,6 +2,7 @@ + #define IHaveSubdirs + #define PassCDebugFlags + ++export LIB_SONAME := 2 + + LIBDIRS= gen bvsl hbook /* hdiff stuff moved from packlib */ + --- cernlib-2006.dfsg.2.orig/debian/patches/315-fixes-for-MacOSX.dpatch +++ cernlib-2006.dfsg.2/debian/patches/315-fixes-for-MacOSX.dpatch @@ -0,0 +1,186 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 315-fixes-for-MacOSX.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Patch set (mostly due to Keisuke Fujii) to allow CERNLIB to compile +## DP: and run on OS X. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg~/src/Imakefile cernlib-2006.dfsg/src/Imakefile +--- cernlib-2006.dfsg~/src/Imakefile 2007-01-09 19:27:31.059892042 -0500 ++++ cernlib-2006.dfsg/src/Imakefile 2007-01-09 19:27:33.049467233 -0500 +@@ -7,8 +7,12 @@ + SUBDIRS= $(LIBDIRS) patchy cfortran + + #ifdef CERNLIB_UNIX ++#ifdef CERNLIB_MACOSX ++SUBDIRS:= $(SUBDIRS) p5boot scripts ++#else + SUBDIRS:= $(SUBDIRS) p5boot scripts mgr + #endif ++#endif + + InstallLibSubdirs($(LIBDIRS)) + +diff -urNad cernlib-2006.dfsg~/src/config/Imake.rules cernlib-2006.dfsg/src/config/Imake.rules +--- cernlib-2006.dfsg~/src/config/Imake.rules 2005-04-18 11:39:25.000000000 -0400 ++++ cernlib-2006.dfsg/src/config/Imake.rules 2007-01-09 19:27:33.050467019 -0500 +@@ -2171,7 +2171,7 @@ + #define CppScriptTarget(dst,src,defs,deplist) @@\ + dst:: src deplist @@\ + RemoveFile($@) @@\ +- $(CPP) defs $@ @@\ ++ $(CPP) defs src | CppSedMagic >$@ @@\ + chmod a+x $@ @@\ + @@\ + clean:: @@\ +@@ -2203,7 +2203,7 @@ + #define CppFileTarget(dst,src,defs,deplist) @@\ + dst:: src deplist @@\ + RemoveFile($@) @@\ +- $(CPP) defs $@ @@\ ++ $(CPP) defs src | CppSedMagic >$@ @@\ + @@\ + clean:: @@\ + RemoveFiles(dst) +diff -urNad cernlib-2006.dfsg~/src/config/MacOSX.cf cernlib-2006.dfsg/src/config/MacOSX.cf +--- cernlib-2006.dfsg~/src/config/MacOSX.cf 2006-11-23 09:25:33.000000000 -0500 ++++ cernlib-2006.dfsg/src/config/MacOSX.cf 2007-01-09 19:41:23.844091722 -0500 +@@ -73,8 +73,12 @@ + #define BuildDPMSExt NO + + # define BuildXvExt NO +-#define OptimizedCDebugFlags -O0 -g -pipe +-#define ExtraLoadFlags -L/usr/X11R6/lib ++ ++#ifndef OptimizationLevel ++# define OptimizationLevel -O ++#endif ++#define OptimizedCDebugFlags OptimizationLevel -g -pipe ++#define ExtraLoadFlags -L/usr/X11R6/lib -L/sw/lib + + #define BuildExamples YES + +@@ -87,9 +91,11 @@ + #define HasVoidSignalReturn YES + + #ifndef DependFlags +-#define DependFlags -I/usr/include/ansi -I/usr/include/bsd ++#define DependFlags -I/usr/include/ansi -I/usr/include/bsd -I/sw/include + #endif + ++#define StandardIncludes -I/sw/include ++ + #define InstallCmd install /* unlink old */ + + /* #define ArCmd libtool -a -o */ +@@ -103,7 +109,7 @@ + + #define PrimaryScreenResolution 95 /* for 17 inch screen */ + +-#define ServerCDebugFlags -O0 -g -pipe ++#define ServerCDebugFlags OptimizationLevel -g -pipe + + /* #define HasGcc YES */ + #ifndef HasGcc +@@ -122,7 +128,7 @@ + #endif + #endif + #ifndef CcCmd +-#define CcCmd cc ++#define CcCmd cc -g + #endif + + #define CppCmd /usr/bin/cpp +@@ -133,25 +139,35 @@ + /* #define GLX_DIRECT_RENDERING */ + + #define f2cFortran YES +-#define FortranCmd gfortran ++#define FortranCmd gfortran -g + #define XargsCmd xargs + #define FortranSaveFlags /* -fno-automatic */ /* Everything static !? */ +-#define OptimisedFortranFlags -O0 -g -funroll-loops -fomit-frame-pointer \ ++#define OptimisedFortranFlags OptimizationLevel -g -funroll-loops \ + -ftree-vectorize +-#define DefaultFCOptions -fno-second-underscore +-/*#define CernlibSystem -DCERNLIB_LINUX -DCERNLIB_UNIX -DCERNLIB_LNX \ +- -DCERNLIB_PPC -DCERNLIB_QMGLIBC \ +- -DCERNLIB_MACOSX -DCERNLIB_GFORTRAN */ ++#define DefaultFCOptions -fno-second-underscore OptimizationLevel + ++#ifndef CernlibLocalDefines ++# define CernlibLocalDefines ++#endif ++#ifdef PpcDarwinArchitecture ++#define CernlibSystem -DCERNLIB_LINUX -DCERNLIB_UNIX -DCERNLIB_LNX \ ++ -DCERNLIB_PPC -DCERNLIB_QMGLIBC \ ++ -DCERNLIB_MACOSX -DCERNLIB_GFORTRAN \ ++ CernlibLocalDefines ++#else + #define CernlibSystem -DCERNLIB_LINUX -DCERNLIB_UNIX -DCERNLIB_LNX \ + -DCERNLIB_QMGLIBC \ +- -DCERNLIB_MACOSX -DCERNLIB_GFORTRAN ++ -DCERNLIB_MACOSX -DCERNLIB_GFORTRAN \ ++ CernlibLocalDefines ++#endif + + /* #define CERNLIB_SHIFT NO */ + #define CERNLIB_LINUX + #define CERNLIB_UNIX + #define CERNLIB_LNX +-/*#define CERNLIB_PPC*/ ++#ifdef PpcDarwinArchitecture ++# define CERNLIB_PPC ++#endif + #define CERNLIB_QMGLIBC + #define CERNLIB_MACOSX + #define CERNLIB_GFORTRAN +diff -urNad cernlib-2006.dfsg~/src/config/MacOSX.rules cernlib-2006.dfsg/src/config/MacOSX.rules +--- cernlib-2006.dfsg~/src/config/MacOSX.rules 2006-09-04 08:32:56.000000000 -0400 ++++ cernlib-2006.dfsg/src/config/MacOSX.rules 2007-01-09 15:47:15.542676000 -0500 +@@ -28,18 +28,24 @@ + #endif + + +- +- + /* + * InstallSharedLibrary - generate rules to install the shared library. ++ * Edited 2003-05-09 by Kevin McCarty to add an install.shlib target. + */ + #ifndef InstallSharedLibrary + #define InstallSharedLibrary(libname,rev,dest) @@\ +-install:: Concat(lib,libname.dylib) @@\ ++.PHONY: install.shlib shlib/libname @@\ ++shlib/libname:: $(DESTDIR)dest/SharedLibraryTargetName(libname) @@\ ++ @@\ ++install.shlib:: $(DESTDIR)dest/SharedLibraryTargetName(libname) @@\ ++ @@\ ++$(DESTDIR)dest/SharedLibraryTargetName(libname): SharedLibraryTargetName(libname) @@\ + MakeDir($(DESTDIR)dest) @@\ +- $(INSTALL) $(INSTALLFLAGS) $(INSTBINFLAGS) Concat(lib,libname.dylib) $(DESTDIR)dest +-@@\ +- ++ $(INSTALL) $(INSTALLFLAGS) $(INSTBINFLAGS) Concat(lib,libname.rev.dylib) $(DESTDIR)dest @@\ ++ (T=`echo Concat($(DESTDIR)dest/lib,libname.rev.dylib) | sed 's/\.[^\.d]*\.dylib/\.dylib/'`;\ @@\ ++ $(RM) $$T && $(LN) Concat(lib,libname.rev.dylib) $$T) @@\ ++ $(RM) Concat($(DESTDIR)dest/lib,libname.dylib) @@\ ++ $(LN) Concat(lib,libname.rev.dylib) Concat($(DESTDIR)dest/lib,libname.dylib) + #endif /* InstallSharedLibrary */ + + /* +diff -urNad cernlib-2006.dfsg~/src/config/site.def cernlib-2006.dfsg/src/config/site.def +--- cernlib-2006.dfsg~/src/config/site.def 2002-04-26 10:46:04.000000000 -0400 ++++ cernlib-2006.dfsg/src/config/site.def 2007-01-09 19:27:33.051466806 -0500 +@@ -99,9 +99,7 @@ + /* if it is already defined and false, undef it! */ + /* do not use shift by default + #if defined(CERNLIB_UNIX) && !defined(CERNLIB_WINNT) +-#if ! defined(CERNLIB_SHIFT) +-#define CERNLIB_SHIFT +-#elif ! CERNLIB_SHIFT ++#if defined(CERNLIB_SHIFT) && !CERNLIB_SHIFT + #undef CERNLIB_SHIFT + #endif + #endif --- cernlib-2006.dfsg.2.orig/debian/patches/121-fix-mathlib-test-case-c209m.dpatch +++ cernlib-2006.dfsg.2/debian/patches/121-fix-mathlib-test-case-c209m.dpatch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 121-fix-mathlib-test-case-c209m.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix off-by-one bug in test case c209m. Courtesy Harald Vogt. + +@DPATCH@ +diff -urNad cernlib-2005.dfsg~/src/mathlib/gen/tests/c209m.F cernlib-2005.dfsg/src/mathlib/gen/tests/c209m.F +--- cernlib-2005.dfsg~/src/mathlib/gen/tests/c209m.F 1996-04-01 10:01:13.000000000 -0500 ++++ cernlib-2005.dfsg/src/mathlib/gen/tests/c209m.F 2006-09-06 19:05:30.359047318 -0400 +@@ -16,7 +16,7 @@ + #include "gen/defc64.inc" + + TEST(NT,NT),A(0:NT),ROOT(NT),SUM + C R is the estimated radius of a circle centered at a root +- DIMENSION R(NT),RES(NT) ++ DIMENSION R(NT+1),RES(NT) + LOGICAL INR2(NT,NT) + PARAMETER (MAXFUN=50000) + PARAMETER (TSTERR=5D-8) --- cernlib-2006.dfsg.2.orig/debian/patches/208-fix-redundant-packlib-dependencies.dpatch +++ cernlib-2006.dfsg.2/debian/patches/208-fix-redundant-packlib-dependencies.dpatch @@ -0,0 +1,79 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 208-fix-redundant-packlib-dependencies.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Remove some redundancy in the libraries listed to be linked against. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/graflib/dzdoc/dzedit/Imakefile /tmp/dpep.ZL6s2h/cernlib-2005.05.09/src/graflib/dzdoc/dzedit/Imakefile +--- cernlib-2005.05.09~/src/graflib/dzdoc/dzedit/Imakefile 1996-05-09 10:32:43.000000000 -0400 ++++ cernlib-2005.05.09/src/graflib/dzdoc/dzedit/Imakefile 2005-06-10 11:54:49.270360036 -0400 +@@ -20,7 +20,7 @@ + NeedTcpipLib + #endif + +-CernlibFortranProgramTarget(dzeX11,dzedit.o,$(PACKAGE_LIB),$(PACKAGE_LIB),graflib/X11 packlib) ++CernlibFortranProgramTarget(dzeX11,dzedit.o,libdzdoc.a,libdzdoc.a,graflib/X11 packlib) + + InstallProgram(dzeX11,$(CERN_BINDIR)) + InstallScript(dzedit,$(CERN_BINDIR)) +diff -urNad cernlib-2005.05.09/src/packlib/cspack/programs/zftp/Imakefile /tmp/dpep.ZL6s2h/cernlib-2005.05.09/src/packlib/cspack/programs/zftp/Imakefile +--- cernlib-2005.05.09~/src/packlib/cspack/programs/zftp/Imakefile 1996-04-16 04:09:49.000000000 -0400 ++++ cernlib-2005.05.09/src/packlib/cspack/programs/zftp/Imakefile 2005-06-10 11:55:33.872780414 -0400 +@@ -14,6 +14,6 @@ + + NeedTcpipLib + +-CernlibFortranProgramTarget(zftp,zftp.o,$(PACKAGE_LIB),$(PACKAGE_LIB),packlib) ++CernlibFortranProgramTarget(zftp,zftp.o,libzftplib.a,libzftplib.a,packlib) + + InstallProgram(zftp,$(CERN_BINDIR)) +diff -urNad cernlib-2005.05.09/src/packlib/cspack/programs/zs/Imakefile /tmp/dpep.ZL6s2h/cernlib-2005.05.09/src/packlib/cspack/programs/zs/Imakefile +--- cernlib-2005.05.09~/src/packlib/cspack/programs/zs/Imakefile 1996-05-05 05:40:20.000000000 -0400 ++++ cernlib-2005.05.09/src/packlib/cspack/programs/zs/Imakefile 2005-06-10 11:56:23.109221943 -0400 +@@ -31,10 +31,10 @@ + + DefinePackageLibrary(zservlib) + +-CernlibFortranProgramTarget(zserv,zs.o,$(PACKAGE_LIB),$(PACKAGE_LIB),packlib) ++CernlibFortranProgramTarget(zserv,zs.o,libzservlib.a,libzservlib.a,packlib) + + InstallProgram(zserv,$(CERN_BINDIR)) + +-CernlibFortranProgramTarget(pawserv,zs.o,$(PACKAGE_LIB),$(PACKAGE_LIB),packlib) ++CernlibFortranProgramTarget(pawserv,zs.o,libzservlib.a,libzservlib.a,packlib) + + InstallProgram(pawserv,$(CERN_BINDIR)) +diff -urNad cernlib-2005.05.09/src/packlib/fatmen/programs/fmkuip/Imakefile /tmp/dpep.ZL6s2h/cernlib-2005.05.09/src/packlib/fatmen/programs/fmkuip/Imakefile +--- cernlib-2005.05.09~/src/packlib/fatmen/programs/fmkuip/Imakefile 1996-11-05 04:32:29.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/fatmen/programs/fmkuip/Imakefile 2005-06-10 11:56:54.779438847 -0400 +@@ -28,6 +28,6 @@ + NeedSysexe + #endif + +-CernlibFortranProgramTarget(fatmen,fatmen.o,$(PACKAGE_LIB),$(PACKAGE_LIB),packlib) ++CernlibFortranProgramTarget(fatmen,fatmen.o,libfmkuip.a,libfmkuip.a,packlib) + + InstallProgram(fatmen,$(CERN_BINDIR)) +diff -urNad cernlib-2005.05.09/src/packlib/hepdb/programs/hepdb/Imakefile /tmp/dpep.ZL6s2h/cernlib-2005.05.09/src/packlib/hepdb/programs/hepdb/Imakefile +--- cernlib-2005.05.09~/src/packlib/hepdb/programs/hepdb/Imakefile 1996-04-02 05:03:43.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/hepdb/programs/hepdb/Imakefile 2005-06-10 11:57:39.794807919 -0400 +@@ -17,6 +17,6 @@ + SpecialFortranObjectRule(hepdb,hepdb,'-WF,-P',NullParameter) + #endif + +-CernlibFortranProgramTarget(hepdb,hepdb.o,$(PACKAGE_LIB),$(PACKAGE_LIB),packlib) ++CernlibFortranProgramTarget(hepdb,hepdb.o,libdbmodule.a,libdbmodule.a,packlib) + + InstallProgram(hepdb,$(CERN_BINDIR)) +diff -urNad cernlib-2005.05.09/src/packlib/kuip/programs/kxterm/Imakefile /tmp/dpep.ZL6s2h/cernlib-2005.05.09/src/packlib/kuip/programs/kxterm/Imakefile +--- cernlib-2005.05.09~/src/packlib/kuip/programs/kxterm/Imakefile 1996-04-18 12:33:08.000000000 -0400 ++++ cernlib-2005.05.09/src/packlib/kuip/programs/kxterm/Imakefile 2005-06-10 12:00:35.355791756 -0400 +@@ -21,6 +21,6 @@ + #endif + + +-CernlibCcProgramTarget(kxterm,kxterm.o,$(PACKAGE_LIB),$(PACKAGE_LIB),$(CLIBS)) ++CernlibCcProgramTarget(kxterm,kxterm.o,libkxtlib.a,libkxtlib.a,$(CLIBS)) + + InstallProgram(kxterm,$(CERN_BINDIR)) --- cernlib-2006.dfsg.2.orig/debian/patches/321-support-gfortran.dpatch +++ cernlib-2006.dfsg.2/debian/patches/321-support-gfortran.dpatch @@ -0,0 +1,192 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 321-support-gfortran.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Support compilation with gfortran. Patch thanks to Harald Vogt, plus: +## DP: - Extra hack to IOSTAT EOF return value to support gfortran-4.3. +## DP: - Fix to patchy.car to change default fortran compiler in nyshell +## DP: in gfortran case. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/c/rteq464.F cernlib-2006.dfsg.2/src/mathlib/gen/c/rteq464.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/c/rteq464.F 1996-04-01 07:01:53.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/c/rteq464.F 2008-03-13 09:40:04.000000000 -0700 +@@ -45,7 +45,16 @@ + MT=3 + Z(1)=SQRT(SQRT(-D)) + Z(2)=-Z(1) ++#if !defined(CERNLIB_GFORTRAN) + Z(3)=SQRT(-Z(1)**2) ++#else ++* Using gfortran the following sqrt yields an inconsistent result ++* if the imaginary part is a "negative zero" ++* gfortran is conform with the Fortran ISO 2003 standard (1.6.1) ++* Therefore if the imaginary part is a "negative zero" ++* it must be replaced by a "positive zero" to be consistent ++ if (imag(-z(1)**2) .eq. 0) z(3)=SQRT(real(-z(1)**2)+i*0) ++#endif + Z(4)=-Z(3) + ENDIF + DC=(-R12*D)**3 +@@ -94,9 +103,21 @@ + W1=SQRT(U(K1)+I*0) + W2=SQRT(U(K2)+I*0) + ELSE ++#if !defined(CERNLIB_GFORTRAN) + MT=3 + W1=SQRT(U(2)+I*U(3)) + W2=SQRT(U(2)-I*U(3)) ++#else ++* For gfortran see above ++ MT=3 ++ IF (U(3) .NE. 0.) THEN ++ W1=SQRT(U(2)+I*U(3)) ++ W2=SQRT(U(2)-I*U(3)) ++ ELSE ++ W1=SQRT(U(2)+I*0) ++ W2=W1 ++ ENDIF ++#endif + ENDIF + W3=0 + IF(W1*W2 .NE. 0) W3=-Q/(8*W1*W2) +diff -urNad cernlib-2006.dfsg.2~/src/mathlib/gen/v/nranf.F cernlib-2006.dfsg.2/src/mathlib/gen/v/nranf.F +--- cernlib-2006.dfsg.2~/src/mathlib/gen/v/nranf.F 1996-04-01 07:02:54.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/mathlib/gen/v/nranf.F 2008-03-13 09:40:04.000000000 -0700 +@@ -14,10 +14,12 @@ + VECTOR(I) = RNDM(I) + 100 CONTINUE + RETURN +- ENTRY NRANIN (V) ++ END ++ SUBROUTINE NRANIN (V) + CALL RDMIN(V) + RETURN +- ENTRY NRANUT (V) ++ END ++ SUBROUTINE NRANUT (V) + CALL RDMOUT(V) + RETURN + END +diff -urNad cernlib-2006.dfsg.2~/src/packlib/hbook/chbook/Imakefile cernlib-2006.dfsg.2/src/packlib/hbook/chbook/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/hbook/chbook/Imakefile 1999-11-15 05:25:58.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/packlib/hbook/chbook/Imakefile 2008-03-13 09:40:04.000000000 -0700 +@@ -13,7 +13,19 @@ + #endif + + #if defined(CERNLIB_LINUX) ++EXTRA_DEFINES := $(EXTRA_DEFINES) -D_SVID_SOURCE ++#endif ++ ++#if defined(CERNLIB_LINUX) && !defined(CERNLIB_QMLXIA64) ++EXTRA_DEFINES := $(EXTRA_DEFINES) -Df2cFortran ++#endif ++ ++#if defined(CERNLIB_QMLXIA64) ++#if defined(CERNLIB_GFORTRAN) ++EXTRA_DEFINES := $(EXTRA_DEFINES) -DgFortran ++#else + EXTRA_DEFINES := $(EXTRA_DEFINES) -Df2cFortran + #endif ++#endif + + SubdirLibraryTarget(NullParameter,NullParameter) +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/unix/gfortgs/Imakefile cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/unix/gfortgs/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/unix/gfortgs/Imakefile 2006-09-04 05:32:59.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/unix/gfortgs/Imakefile 2008-03-13 09:40:04.000000000 -0700 +@@ -1,6 +1,6 @@ + +-SRCS_F= irndm.F qnext.F rdmin.F ++SRCS_F= irndm.F qnext.F rdmin.F kernlibgetarg.F + +-SRCS_C= lshift.c ishftr.c getarg.c ++SRCS_C= lshift.c ishftr.c /* getarg.c */ + + SubdirLibraryTarget(NullParameter,NullParameter) +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/unix/gfortgs/kernlibgetarg.F cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/unix/gfortgs/kernlibgetarg.F +--- cernlib-2006.dfsg.2~/src/packlib/kernlib/kerngen/unix/gfortgs/kernlibgetarg.F 1969-12-31 16:00:00.000000000 -0800 ++++ cernlib-2006.dfsg.2/src/packlib/kernlib/kerngen/unix/gfortgs/kernlibgetarg.F 2008-03-13 09:40:04.000000000 -0700 +@@ -0,0 +1,19 @@ ++* Wrapper GETARG routine for gfortran, ++* originally written by Harald Vogt ++* ++* SUBROUTINE GETARG (JARG, CHARG) ++* The following stuff is required to use gfortrans inline routine GETARG ++* It is required to avoid the calling GETARG here which conflicts ++* to the Fortran rules ++* CHARACTER CHARG*(*) ++* CALL MYGETARG (JARG, CHARG) ++* END ++ ++ SUBROUTINE KERNLIBGETARG (JARG, CHARG) ++ CHARACTER CHARG*(*) ++* gfortran translates the following line to a call ++* to its library routine _gfortran_getarg_i4 ++* therefore it will not clash in the linking step ++ CALL GETARG (JARG, CHARG) ++ END ++ +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/kuip/kfor.h cernlib-2006.dfsg.2/src/packlib/kuip/kuip/kfor.h +--- cernlib-2006.dfsg.2~/src/packlib/kuip/kuip/kfor.h 2006-09-15 02:35:30.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/kuip/kfor.h 2008-03-13 09:40:05.000000000 -0700 +@@ -1031,7 +1031,7 @@ + #if !defined(CERNLIB_GFORTRAN) + #define Getarg F77_NAME(getarg,GETARG) + #else +-#define Getarg _gfortran_getarg_i4 ++#define Getarg F77_NAME(kernlibgetarg,KERNLIBGETARG) + #endif + extern SUBROUTINE Getarg; + #define Goparm F77_NAME(goparm,GOPARM) +diff -urNad cernlib-2006.dfsg.2~/src/packlib/zebra/fq/fzdaeof.inc cernlib-2006.dfsg.2/src/packlib/zebra/fq/fzdaeof.inc +--- cernlib-2006.dfsg.2~/src/packlib/zebra/fq/fzdaeof.inc 2006-09-15 02:35:31.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/packlib/zebra/fq/fzdaeof.inc 2008-03-13 09:40:05.000000000 -0700 +@@ -46,8 +46,12 @@ + #elif defined(CERNLIB_WINDOWS) + * only valid for dec fortran (e.g. not f2c + microsoft c) + PARAMETER (IOSEOF = 36) +-#elif defined(CERNLIB_GFORTRAN) ++#elif defined(CERNLIB_GFORTRAN) && defined(__GNUC__) && defined(__GNUC_MINOR__) ++# if (__GNUC__ > 4 || __GNUC_MINOR__ >= 3) ++ PARAMETER (IOSEOF = 5002) ++# else + PARAMETER (IOSEOF = 3) ++# endif + #elif 1 + PARAMETER (IOSEOF = -1) + #endif +diff -urNad cernlib-2006.dfsg.2~/src/patchy/fcasplit.F cernlib-2006.dfsg.2/src/patchy/fcasplit.F +--- cernlib-2006.dfsg.2~/src/patchy/fcasplit.F 2008-03-13 09:39:39.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/patchy/fcasplit.F 2008-03-13 09:40:05.000000000 -0700 +@@ -352,7 +352,11 @@ + PARAMETER (CHEXAS = '.s') + PARAMETER (CHEXOBJ = '.o') + ++#if defined(CERNLIB_GFORTRAN) ++ PARAMETER (CHWHF = 'gfortran ') ++#else + PARAMETER (CHWHF = 'g77 ') ++#endif + PARAMETER (CHWHC = 'gcc ') + PARAMETER (CHWHA = 'as ') + #endif +diff -urNad cernlib-2006.dfsg.2~/src/patchy/patchy.car cernlib-2006.dfsg.2/src/patchy/patchy.car +--- cernlib-2006.dfsg.2~/src/patchy/patchy.car 2006-09-04 05:33:00.000000000 -0700 ++++ cernlib-2006.dfsg.2/src/patchy/patchy.car 2008-03-13 09:41:01.000000000 -0700 +@@ -25968,10 +25968,14 @@ + +SELF, IF=QMLNX. + CALL SMCIL (-1, 'fo:1' , '-O2') + CALL SMCIL (-1, 'fo:2' , '-O0') +- CALL SMCIL (-1, 'fopt' , '-c -Nx800 -Nc200') ++ CALL SMCIL (-1, 'fopt' , '-c -g') + CALL SMCIL (-1, 'co:1' , '-O2') + CALL SMCIL (-1, 'co:2' , '-O0') +- CALL SMCIL (-1, 'copt' , '-c -posix') ++ CALL SMCIL (-1, 'copt' , '-c -g') ++ +++SELF, IF=GFORTRAN. ++ CALL SMCIL (-1, 'fc' , 'gfortran') ++ + +SELF, IF=QMNXT. + +SELF, IF=QMSGI. + +SELF, IF=QMSUN. --- cernlib-2006.dfsg.2.orig/debian/patches/120-fix-gets-usage-in-kuipc.dpatch +++ cernlib-2006.dfsg.2/debian/patches/120-fix-gets-usage-in-kuipc.dpatch @@ -0,0 +1,26 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 120-fix-gets-usage-in-kuipc.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix usage of gets() in kuipc. Thanks to Harald Vogt, 2006-07-20. + +@DPATCH@ +diff -urNad cernlib-2005.dfsg~/src/packlib/kuip/programs/kuipc/kuipcc.c cernlib-2005.dfsg/src/packlib/kuip/programs/kuipc/kuipcc.c +--- cernlib-2005.dfsg~/src/packlib/kuip/programs/kuipc/kuipcc.c 2000-03-27 09:13:17.000000000 -0500 ++++ cernlib-2005.dfsg/src/packlib/kuip/programs/kuipc/kuipcc.c 2006-09-06 18:57:58.483212039 -0400 +@@ -354,10 +354,13 @@ + } + } + else { ++ /* avoid the usage of gets - possible buffer overrun */ + fprintf( stderr, "Enter CDF input file name: " ); +- gets( ifile ); ++ fgets( ifile, sizeof ifile, stdin ); ++ strcpy( strstr( ifile, "\n"), "\0"); + fprintf( stderr, "Enter definition output file name: " ); +- gets( ofile ); ++ fgets( ofile, sizeof ofile, stdin ); ++ strcpy( strstr( ofile, "\n"), "\0"); + } + + if( !explicit ) { --- cernlib-2006.dfsg.2.orig/debian/patches/319-work-around-imake-segfaults.dpatch +++ cernlib-2006.dfsg.2/debian/patches/319-work-around-imake-segfaults.dpatch @@ -0,0 +1,51 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 319-work-around-imake-segfaults.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: If at first Imake doesn't succeed, try, try again. +## DP: (Hideous workaround for non-deterministic imake segfaults on hppa.) + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/config/Imake.rules cernlib-2005.05.09.dfsg/src/config/Imake.rules +--- cernlib-2005.05.09.dfsg~/src/config/Imake.rules 2006-01-02 10:35:09.050384887 -0500 ++++ cernlib-2005.05.09.dfsg/src/config/Imake.rules 2006-01-02 10:38:18.693611381 -0500 +@@ -1296,7 +1296,11 @@ + $(IMAKE_CMD) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR) \ @@\ + -DPackageTop=$(PACKAGETOP) \ @@\ + -DPackageName=$(PACKAGE_NAME) \ @@\ +- imakeflags -f $< ++ imakeflags -f $< || \ @@\ ++ $(IMAKE_CMD) -DTOPDIR=$(TOP) -DCURDIR=$(CURRENT_DIR) \ @@\ ++ -DPackageTop=$(PACKAGETOP) \ @@\ ++ -DPackageName=$(PACKAGE_NAME) \ @@\ ++ imakeflags -f $< || exit 1 + + #endif /* BuildMakefileTarget */ + +@@ -2127,7 +2131,11 @@ + ImakeSubCmdHelper -DTOPDIR=$$imaketop \ @@\ + -DCURDIR=$$curdir$$i \ @@\ + -DPackageTop=$(PACKAGETOP) \ @@\ +- -DPackageName=$(PACKAGE_NAME); \ @@\ ++ -DPackageName=$(PACKAGE_NAME) || \ @@\ ++ ImakeSubCmdHelper -DTOPDIR=$$imaketop \ @@\ ++ -DCURDIR=$$curdir$$i \ @@\ ++ -DPackageTop=$(PACKAGETOP) \ @@\ ++ -DPackageName=$(PACKAGE_NAME) || exit 1; \ @@\ + fi; \ @@\ + $(MAKE) $(MFLAGS) Makefiles; \ @@\ + cd $$newtop; \ @@\ +@@ -2322,7 +2330,12 @@ + -DCURDIR=$$curdir$$i \ @@\ + -DPackageTop=$(PACKAGETOP) \ @@\ + -DPackageName=$(PACKAGE_NAME) \ @@\ +- -f $$imakefile; \ @@\ ++ -f $$imakefile || \ @@\ ++ ImakeSubCmdHelper -DTOPDIR=$$imaketop \ @@\ ++ -DCURDIR=$$curdir$$i \ @@\ ++ -DPackageTop=$(PACKAGETOP) \ @@\ ++ -DPackageName=$(PACKAGE_NAME) \ @@\ ++ -f $$imakefile || exit 1; \ @@\ + fi; \ @@\ + fi; + #endif --- cernlib-2006.dfsg.2.orig/debian/patches/101-exclude-extra-modules-from-Imakefile.dpatch +++ cernlib-2006.dfsg.2/debian/patches/101-exclude-extra-modules-from-Imakefile.dpatch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 700-remove-kernlib-from-packlib-Imakefile.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Only try to build modules included in this source package. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/Imakefile /tmp/dpep.VNPUUt/cernlib-2005.05.09/src/Imakefile +--- cernlib-2005.05.09~/src/Imakefile 2005-06-10 16:46:36.495568752 -0400 ++++ cernlib-2005.05.09/src/Imakefile 2005-06-10 16:50:33.508709032 -0400 +@@ -2,7 +2,7 @@ + #define PassCDebugFlags + + +-LIBDIRS= packlib pawlib graflib mathlib geant321 mclibs phtools ++LIBDIRS= packlib graflib mathlib + + SUBDIRS= $(LIBDIRS) patchy cfortran + --- cernlib-2006.dfsg.2.orig/debian/patches/700-move-kernlib-to-top-level.sh.dpatch +++ cernlib-2006.dfsg.2/debian/patches/700-move-kernlib-to-top-level.sh.dpatch @@ -0,0 +1,27 @@ +#!/bin/sh + +## DP: Script to move the "kernlib" directory to the top level so its code +## DP: isn't compiled into packlib as well. + +set -e + +case "$1" in + -patch) + ORIGIN=src/packlib/kernlib + TARGET=src/kernlib + ;; + + -unpatch) + ORIGIN=src/kernlib + TARGET=src/packlib/kernlib + ;; + + *) exit 1 ;; +esac + +if [ ! -d $TARGET ] ; then + mv $ORIGIN $TARGET +else + exit 1 +fi + --- cernlib-2006.dfsg.2.orig/debian/patches/318-additional-gcc-3.4-fixes.dpatch +++ cernlib-2006.dfsg.2/debian/patches/318-additional-gcc-3.4-fixes.dpatch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 318-additional-gcc-3.4-fixes.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Additional fixes for gcc 3.4, courtesy of Andreas Jochens. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/packlib/kuip/code_motif/iconwidget.c /tmp/dpep.f5SU0N/cernlib-2005.05.09/src/packlib/kuip/code_motif/iconwidget.c +--- cernlib-2005.05.09~/src/packlib/kuip/code_motif/iconwidget.c 1996-03-08 10:33:10.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/kuip/code_motif/iconwidget.c 2005-06-14 12:33:43.511482468 -0400 +@@ -35,7 +35,7 @@ + void _XmHighlightBorder (); + void _XmUnhighlightBorder (); + #ifndef __APPLE__ +-void _XmDrawShadow (); ++/* void _XmDrawShadow (); */ + #endif + + /* Motif1.1 ( except apollo, hpux has _XmPrimitive... with two args only --- cernlib-2006.dfsg.2.orig/debian/patches/119-fix-compiler-warnings.dpatch +++ cernlib-2006.dfsg.2/debian/patches/119-fix-compiler-warnings.dpatch @@ -0,0 +1,595 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 119-fix-compiler-warnings.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix numerous minor compiler warnings. Patch from Harald Vogt, +## DP: 2006-07-20. + +@DPATCH@ +diff -urNad cernlib-2005.dfsg~/src/graflib/dzdoc/dzdkern/dzdcod.F cernlib-2005.dfsg/src/graflib/dzdoc/dzdkern/dzdcod.F +--- cernlib-2005.dfsg~/src/graflib/dzdoc/dzdkern/dzdcod.F 1996-03-04 11:12:56.000000000 -0500 ++++ cernlib-2005.dfsg/src/graflib/dzdoc/dzdkern/dzdcod.F 2006-09-06 19:53:39.375157506 -0400 +@@ -90,7 +90,9 @@ + CALL DZDPLN(LUN,' ',99) + ELSE + * do MZBOOKS +- CALL DZDCO1(CHBANK,3,CHOINT,' ',LUN) ++* bad Fortran convention, add dummy IFI,ILI arguments in this case ++ccc CALL DZDCO1(CHBANK,3,CHOINT,' ',LUN) ++ CALL DZDCO1(CHBANK,3,CHOINT,' ',LUN,IFI,ILI) + * finish line with bookings + CALL DZDPLN(LUN,' ',99) + ENDIF +diff -urNad cernlib-2005.dfsg~/src/graflib/higz/higzcc/gifencode.c cernlib-2005.dfsg/src/graflib/higz/higzcc/gifencode.c +--- cernlib-2005.dfsg~/src/graflib/higz/higzcc/gifencode.c 1996-02-14 08:10:25.000000000 -0500 ++++ cernlib-2005.dfsg/src/graflib/higz/higzcc/gifencode.c 2006-09-06 19:53:39.376157293 -0400 +@@ -12,6 +12,7 @@ + /*-- Author : E.Chernyaev 19/01/94*/ + #include + #include ++#include + + #ifdef __STDC__ + #define ARGS(alist) alist +diff -urNad cernlib-2005.dfsg~/src/graflib/higz/higzcc/imgpickpalette.c cernlib-2005.dfsg/src/graflib/higz/higzcc/imgpickpalette.c +--- cernlib-2005.dfsg~/src/graflib/higz/higzcc/imgpickpalette.c 1998-11-13 08:19:53.000000000 -0500 ++++ cernlib-2005.dfsg/src/graflib/higz/higzcc/imgpickpalette.c 2006-09-06 19:53:39.376157293 -0400 +@@ -30,6 +30,7 @@ + #if defined(CERNLIB_GIF) + #include + #include ++#include + + void CollectImageColors(unsigned long, unsigned long **, int *, int *); + int FindColor(unsigned long, unsigned long *, int); +diff -urNad cernlib-2005.dfsg~/src/graflib/higz/higzcc/rotated.c cernlib-2005.dfsg/src/graflib/higz/higzcc/rotated.c +--- cernlib-2005.dfsg~/src/graflib/higz/higzcc/rotated.c 1998-01-30 10:22:04.000000000 -0500 ++++ cernlib-2005.dfsg/src/graflib/higz/higzcc/rotated.c 2006-09-06 19:53:39.377157080 -0400 +@@ -35,7 +35,9 @@ + #include + #include + #include ++#include + #include ++#include + + /* ************************************************************************ * + * +@@ -482,10 +484,10 @@ + + /* get a rotated bitmap */ + item=XRotRetrieveFromCache(dpy, font, angle, text, align); +- if(item==NULL) return (int)NULL; ++ if(item==NULL) return 0; + + /* this gc has similar properties to the user's gc */ +- my_gc=XCreateGC(dpy, drawable, NULL, 0); ++ my_gc=XCreateGC(dpy, drawable, 0, NULL); + XCopyGC(dpy, gc, GCForeground|GCBackground|GCFunction|GCPlaneMask, + my_gc); + +@@ -549,7 +551,7 @@ + + empty_stipple=XCreatePixmap(dpy, drawable, 1, 1, 1); + +- depth_one_gc=XCreateGC(dpy, empty_stipple, NULL, 0); ++ depth_one_gc=XCreateGC(dpy, empty_stipple, 0, NULL); + XSetForeground(dpy, depth_one_gc, 0); + XFillRectangle(dpy, empty_stipple, depth_one_gc, 0, 0, 2, 2); + +@@ -605,7 +607,7 @@ + item->cols_out, item->rows_out, 1); + + /* create a GC */ +- depth_one_gc=XCreateGC(dpy, new_bitmap, NULL, 0); ++ depth_one_gc=XCreateGC(dpy, new_bitmap, 0, NULL); + XSetForeground(dpy, depth_one_gc, 1); + XSetBackground(dpy, depth_one_gc, 0); + +@@ -705,7 +707,7 @@ + DEBUG_PRINT1("**\nHorizontal text.\n"); + + /* this gc has similar properties to the user's gc (including stipple) */ +- my_gc=XCreateGC(dpy, drawable, NULL, 0); ++ my_gc=XCreateGC(dpy, drawable, 0, NULL); + XCopyGC(dpy, gc, + GCForeground|GCBackground|GCFunction|GCStipple|GCFillStyle| + GCTileStipXOrigin|GCTileStipYOrigin|GCPlaneMask, my_gc); +@@ -918,7 +920,7 @@ + item->cols_out, item->rows_out, 1); + + /* depth one gc */ +- depth_one_gc=XCreateGC(dpy, item->bitmap, NULL, 0); ++ depth_one_gc=XCreateGC(dpy, item->bitmap, 0, NULL); + XSetBackground(dpy, depth_one_gc, 0); + XSetForeground(dpy, depth_one_gc, 1); + +@@ -1032,7 +1034,7 @@ + item->cols_in, item->rows_in, 1); + + /* create a GC for the bitmap */ +- font_gc=XCreateGC(dpy, canvas, NULL, 0); ++ font_gc=XCreateGC(dpy, canvas, 0, NULL); + XSetBackground(dpy, font_gc, 0); + XSetFont(dpy, font_gc, font->fid); + +diff -urNad cernlib-2005.dfsg~/src/graflib/higz/higzcc/x11int.c cernlib-2005.dfsg/src/graflib/higz/higzcc/x11int.c +--- cernlib-2005.dfsg~/src/graflib/higz/higzcc/x11int.c 2000-07-08 02:19:30.000000000 -0400 ++++ cernlib-2005.dfsg/src/graflib/higz/higzcc/x11int.c 2006-09-06 19:53:39.378156868 -0400 +@@ -1172,8 +1172,8 @@ + */ + cws->drawing = cws->window; + cws->buffer = (Drawable)NULL; +- cws->double_buffer = (int)NULL; +- cws->clip = (int)NULL; ++ cws->double_buffer = 0; ++ cws->clip = 0; + cws->width = wval; + cws->height = hval; + +@@ -1509,7 +1509,7 @@ + void + ixclsds() + { +- int Motif = (int)NULL; ++ int Motif = 0; + int i; + + if (display == NULL) return; +@@ -1529,12 +1529,12 @@ + for ( i = 0; i < MAXCOL; i++ ) { + if( colors[i].defined == 1 ) { + colors[i].defined = 0; +- XFreeColors(display, colormap, &colors[i].pixel, 1, (int)NULL); ++ XFreeColors(display, colormap, &colors[i].pixel, 1, 0); + } + } + + #if !defined(CERNLIB_TK_WINDOWS) +- if(display != NULL && Motif == (int)NULL) XCloseDisplay( display ); ++ if(display != NULL && Motif == 0) XCloseDisplay( display ); + #endif + display = NULL; + cws = NULL; +@@ -1567,7 +1567,7 @@ + + XFlush( display ); + +- cws->open = (int)NULL; ++ cws->open = 0; + + for( wid = 0; wid < MAXWN; wid++ ) + if( windows[wid].open ) { +@@ -1886,7 +1886,7 @@ + int i; + + tws = &windows[*wid]; +- tws->clip = (int)NULL; ++ tws->clip = 0; + + for( i = 0; i < MAXGC; i++ ) + XSetClipMask( display, gclist[i], None ); +@@ -1916,9 +1916,9 @@ + xcol.flags = DoRed || DoGreen || DoBlue; + if( colors[*cindex].defined == 1 ) { + colors[*cindex].defined = 0; +- XFreeColors(display, colormap, &colors[*cindex].pixel, 1, (int)NULL); ++ XFreeColors(display, colormap, &colors[*cindex].pixel, 1, 0); + } +- if( XAllocColor( display, colormap, &xcol ) != (Status)NULL ) { ++ if( XAllocColor( display, colormap, &xcol ) != (Status)0 ) { + colors[*cindex].defined = 1; + colors[*cindex].pixel = xcol.pixel; + colors[*cindex].red = *r; +diff -urNad cernlib-2005.dfsg~/src/packlib/cspack/sysreq/log.c cernlib-2005.dfsg/src/packlib/cspack/sysreq/log.c +--- cernlib-2005.dfsg~/src/packlib/cspack/sysreq/log.c 2003-09-02 08:47:16.000000000 -0400 ++++ cernlib-2005.dfsg/src/packlib/cspack/sysreq/log.c 2006-09-06 19:53:39.378156868 -0400 +@@ -28,6 +28,7 @@ + #include /* standard input/output definitions */ + #if !defined(vms) + #include /* file control */ ++#include /* string manipulation functions */ + #else + #include /* general utility definitions */ + #include /* VMS's unix-emulation I/O */ +diff -urNad cernlib-2005.dfsg~/src/packlib/cspack/sysreq/netreq.c cernlib-2005.dfsg/src/packlib/cspack/sysreq/netreq.c +--- cernlib-2005.dfsg~/src/packlib/cspack/sysreq/netreq.c 1996-03-08 10:44:25.000000000 -0500 ++++ cernlib-2005.dfsg/src/packlib/cspack/sysreq/netreq.c 2006-09-06 19:53:39.379156655 -0400 +@@ -25,6 +25,7 @@ + #include /* Internet data types */ + #include /* Arpa internet routines */ + #include /* Standard Input/Output */ ++#include /* string manipulation functions */ + #if defined(vms) + #include + #else +diff -urNad cernlib-2005.dfsg~/src/packlib/cspack/sysreq/serror.c cernlib-2005.dfsg/src/packlib/cspack/sysreq/serror.c +--- cernlib-2005.dfsg~/src/packlib/cspack/sysreq/serror.c 1998-08-25 08:44:52.000000000 -0400 ++++ cernlib-2005.dfsg/src/packlib/cspack/sysreq/serror.c 2006-09-06 19:53:39.379156655 -0400 +@@ -177,7 +177,7 @@ + else { + #if !defined(vms) + if ((n>0) && (n + #include + #include ++ ++#if !defined(linux) + extern char* malloc(); ++#endif /* linux */ + + #if defined(vms) + #if defined(TWG) && (TWG == 1) +@@ -412,7 +415,7 @@ + s_errmsg() /* return last error message */ + { + #if !defined(vms) +- return(sys_errlist[errno]); ++ return((char*)sys_errlist[errno]); + #else /* vms */ + #if defined(MULTINET) && (MULTINET == 1) + return(vms_errno_string()); +diff -urNad cernlib-2005.dfsg~/src/packlib/cspack/sysreq/sysreq.h cernlib-2005.dfsg/src/packlib/cspack/sysreq/sysreq.h +--- cernlib-2005.dfsg~/src/packlib/cspack/sysreq/sysreq.h 1996-03-08 10:44:26.000000000 -0500 ++++ cernlib-2005.dfsg/src/packlib/cspack/sysreq/sysreq.h 2006-09-06 19:53:39.380156442 -0400 +@@ -88,7 +88,7 @@ + */ + + #ifndef VM +-extern char *malloc(); /* Memory allocation */ ++#include /* standard C library defs */ + #endif /* VM */ + extern char *getenv(); /* Get environment info */ + +diff -urNad cernlib-2005.dfsg~/src/packlib/cspack/sysreq/xdr.c cernlib-2005.dfsg/src/packlib/cspack/sysreq/xdr.c +--- cernlib-2005.dfsg~/src/packlib/cspack/sysreq/xdr.c 1996-03-08 10:44:26.000000000 -0500 ++++ cernlib-2005.dfsg/src/packlib/cspack/sysreq/xdr.c 2006-09-06 19:53:39.380156442 -0400 +@@ -52,7 +52,7 @@ + #endif /* min */ + + #ifndef VM +-extern char *malloc(); ++#include /* standard C library defs */ + #endif /* VM */ + + #ifdef VM +diff -urNad cernlib-2005.dfsg~/src/packlib/cspack/tcpaw/Imakefile cernlib-2005.dfsg/src/packlib/cspack/tcpaw/Imakefile +--- cernlib-2005.dfsg~/src/packlib/cspack/tcpaw/Imakefile 1999-01-15 08:59:12.000000000 -0500 ++++ cernlib-2005.dfsg/src/packlib/cspack/tcpaw/Imakefile 2006-09-06 19:53:39.380156442 -0400 +@@ -49,4 +49,9 @@ + #endif + #endif + ++#if defined(CERNLIB_LINUX) && defined(__GNUC__) ++ /* This is to avoid warnings in code not used for linux */ ++CCOPTIONS+=-trigraphs ++#endif ++ + SubdirLibraryTarget(NullParameter,NullParameter) +diff -urNad cernlib-2005.dfsg~/src/packlib/cspack/tcpaw/tcpaw.c cernlib-2005.dfsg/src/packlib/cspack/tcpaw/tcpaw.c +--- cernlib-2005.dfsg~/src/packlib/cspack/tcpaw/tcpaw.c 2005-04-18 11:39:28.000000000 -0400 ++++ cernlib-2005.dfsg/src/packlib/cspack/tcpaw/tcpaw.c 2006-09-06 19:53:53.133231056 -0400 +@@ -301,6 +301,7 @@ + #ifndef IBMRT + /* this is a kludge, one ought to fix the "prototypes" in this file */ + #include ++#include /* needed for linux gcc4 */ + #endif /* IBMRT */ + #endif /* WIN32 */ + #endif /* IBM */ +@@ -478,7 +479,7 @@ + #endif /* VMS */ + + #ifdef AUTHENT +- unsigned char idbuf[100]; ++ char idbuf[100]; + char usbuf[20], pwbuf[20]; + char *user = usbuf, *passwd = pwbuf; + register int i, len; +@@ -487,7 +488,7 @@ + #ifdef SOCKETS + struct hostent *hp; /* host info for remote host */ + struct sockaddr_in peeraddr_in; /* for peer socket address */ +- int peerlen; ++ unsigned peerlen; + #endif /* SOCKETS */ + + #ifdef WIN32 +@@ -521,7 +522,7 @@ + #ifdef SOCKETS + memset ((char *)&peeraddr_in, 0, sizeof(struct sockaddr_in)); + peerlen = sizeof(peeraddr_in); +- if (getpeername(s, &peeraddr_in, &peerlen) == SOCKET_ERROR) { ++ if (getpeername(s, (struct sockaddr *)&peeraddr_in, &peerlen) == SOCKET_ERROR) { + #ifdef LOGFILE + fprintf(logfile, "%s: getpeername failed\n", Prog_Name); + #endif /* LOGFILE */ +@@ -658,7 +659,7 @@ + SOCKET *isock, *osock; + { + #ifdef AUTHENT +- unsigned char idbuf[100]; ++ char idbuf[100]; + char usbuf[20], pwbuf[20]; + char *user = usbuf, *passwd = pwbuf; + register int i, len; +@@ -727,7 +728,7 @@ + unsigned short sport = *port; /* VM */ + + #if defined ( _WIN32) && defined (AUTHENT) +- unsigned char idbuf[100]; ++ char idbuf[100]; + char usbuf[20], pwbuf[20]; + char *user = usbuf, *passwd = pwbuf; + register int i, len; +@@ -800,7 +801,7 @@ + } + #endif + /* Bind the listen address to the socket. */ +- if (bind(ls, &myaddr_in, sizeof(struct sockaddr_in)) == SOCKET_ERROR) { ++ if (bind(ls, (struct sockaddr *)&myaddr_in, sizeof(struct sockaddr_in)) == SOCKET_ERROR) { + #if defined(IBM) || defined(_WIN32) + tcperror("server_sock_setup: bind(ls,...)"); + #else +@@ -829,7 +830,7 @@ + exit(1); + } + addrlen = sizeof(struct sockaddr_in); +- s = accept(ls, &peeraddr_in, &addrlen); ++ s = accept(ls, (struct sockaddr *)&peeraddr_in, (socklen_t *)&addrlen); + if ( s == INVALID_SOCKET) { + fprintf(stderr, "%s: accept error\n", "server_sock_setup"); + return(-1); +@@ -984,7 +985,7 @@ + char *user = NULL, *passwd = NULL; + int port; + #if defined(AUTHENT) +- unsigned char idbuf[100]; ++ char idbuf[100]; + #endif /* AUTHENT */ + + #ifdef VMS +@@ -1290,7 +1291,7 @@ + /* Try to connect to the remote server at the address + * which was just built into peeraddr. + */ +- if (connect(s, &peeraddr_in, sizeof(struct sockaddr_in)) == SOCKET_ERROR) { ++ if (connect(s, (struct sockaddr *)&peeraddr_in, sizeof(struct sockaddr_in)) == SOCKET_ERROR) { + #ifndef _WIN32 + close(s); + #else +@@ -1313,7 +1314,7 @@ + } + + addrlen = sizeof(struct sockaddr_in); +- if (getsockname(s, &myaddr_in, &addrlen) == SOCKET_ERROR) { ++ if (getsockname(s, (struct sockaddr *)&myaddr_in, (socklen_t *)&addrlen) == SOCKET_ERROR) { + #if defined(IBM) || defined(_WIN32) + tcperror("client_sock_setup"); + #else +@@ -2688,7 +2689,7 @@ + ((struct in_addr *)(hp->h_addr))->s_addr; + /* bcopy(hp->h_addr, (caddr_t)&sin.sin_addr, hp->h_length); */ + } +- if (connect(s, &sin, sizeof(struct sockaddr_in)) == SOCKET_ERROR ) { ++ if (connect(s, (struct sockaddr *)&sin, sizeof(struct sockaddr_in)) == SOCKET_ERROR ) { + #ifndef _WIN32 + if (errno == ECONNREFUSED && timo <= 16) { + (void) close(s); +@@ -3352,7 +3353,7 @@ + ((struct in_addr *)(hp->h_addr))->s_addr; + /* bcopy(hp->h_addr, (caddr_t)&sin.sin_addr, hp->h_length); */ + } +- if (connect(s, &sin, sizeof(struct sockaddr_in)) == SOCKET_ERROR) { ++ if (connect(s, (struct sockaddr *)&sin, sizeof(struct sockaddr_in)) == SOCKET_ERROR) { + #ifndef WIN32 + if (errno == ECONNREFUSED && timo <= 16) { + (void) close(s); +@@ -3486,7 +3487,7 @@ + } + + getstr(sock,buf, cnt, errmesg) +-int *sock; ++int sock; + char *buf; + int cnt; /* sizeof() the char array */ + char *errmesg; /* in case error message required */ +diff -urNad cernlib-2005.dfsg~/src/packlib/fatmen/fmc/faexit.c cernlib-2005.dfsg/src/packlib/fatmen/fmc/faexit.c +--- cernlib-2005.dfsg~/src/packlib/fatmen/fmc/faexit.c 1997-09-02 08:56:52.000000000 -0400 ++++ cernlib-2005.dfsg/src/packlib/fatmen/fmc/faexit.c 2006-09-06 19:53:39.381156230 -0400 +@@ -27,6 +27,7 @@ + void faexit(icode) + #endif + #if defined(CERNLIB_QX_SC) ++#include /* standard C library defs */ + void faexit_(icode) + #endif + int *icode; +diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/abend.c cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/abend.c +--- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/abend.c 1997-02-04 12:34:12.000000000 -0500 ++++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/abend.c 2006-09-06 19:53:39.382156017 -0400 +@@ -19,6 +19,7 @@ + CERN PROGLIB# Z035 ABEND .VERSION KERNFOR 4.31 911111 + */ + #if defined(CERNLIB_QX_SC) ++#include + void type_of_call abend_() + #endif + #if defined(CERNLIB_QXNO_SC) +diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/ctimef.c cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/ctimef.c +--- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/ctimef.c 1997-02-04 12:34:14.000000000 -0500 ++++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/ctimef.c 2006-09-06 19:53:39.382156017 -0400 +@@ -24,6 +24,8 @@ + STIME decoded time string of length 24 (CHARACTER*24 STIME) + */ + #if defined(CERNLIB_QX_SC) ++#include ++#include + void type_of_call ctimef_(clock, stime) + #endif + #if defined(CERNLIB_QXNO_SC) +diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/exitf.c cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/exitf.c +--- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/exitf.c 1997-02-04 12:34:16.000000000 -0500 ++++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/exitf.c 2006-09-06 19:53:39.382156017 -0400 +@@ -19,6 +19,7 @@ + CERN PROGLIB# Z035 EXITF .VERSION KERNFOR 4.39 940228 + */ + #if defined(CERNLIB_QX_SC) ++#include + void type_of_call exitf_(st) + #endif + #if defined(CERNLIB_QXNO_SC) +diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/getwdi.c cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/getwdi.c +--- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/getwdi.c 1997-09-02 10:26:36.000000000 -0400 ++++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/getwdi.c 2006-09-06 19:53:39.382156017 -0400 +@@ -29,6 +29,7 @@ + ISLATE(1) returns its lenth NTEXT + */ + #include ++#include + #ifdef WIN32 + #include + # ifndef getcwd +@@ -58,7 +59,7 @@ + #endif + int *lgname; + { +- char *malloc(); ++/* char *malloc(); - see above "#include " */ + char *ptalc, *pttext; + int fchput(); + int nalc; +diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/lstati.c cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/lstati.c +--- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/lstati.c 1997-02-04 12:34:35.000000000 -0500 ++++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/lstati.c 2006-09-06 19:53:39.382156017 -0400 +@@ -26,6 +26,7 @@ + Fortran interface routine to lstat + */ + #include ++#include + #include + #include + #include "kerngen/fortchar.h" +@@ -56,7 +57,7 @@ + ptname = fchtak(fname,*lgname); + if (ptname == NULL) goto out1; + +- buf = (struct stat *) malloc(sizeof (struct stat)); ++ buf = malloc(sizeof (struct stat)); + if (buf == NULL) goto out2; + + istat = lstat(ptname, buf); +diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/sigprnt.c cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/sigprnt.c +--- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/sigprnt.c 1997-02-04 12:34:42.000000000 -0500 ++++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/sigprnt.c 2006-09-06 19:53:39.383155804 -0400 +@@ -34,7 +34,7 @@ + #ifndef CERNLIB_WINNT + sigset_t oldmask; + +- sigprocmask (NULL, NULL, &oldmask); ++ sigprocmask ( 0, NULL, &oldmask); + + printf (" blocked signals are: %x\n", oldmask); + #else +diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/stati.c cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/stati.c +--- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/stati.c 1997-09-02 10:26:39.000000000 -0400 ++++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/stati.c 2006-09-06 19:53:39.383155804 -0400 +@@ -26,6 +26,7 @@ + Fortran interface routine to stat + */ + #include ++#include + #if defined(CERNLIB_QMVAX)||defined(CERNLIB_QMOS9) + #include + #include +@@ -72,7 +73,7 @@ + if (ptname == NULL) goto out1; + + #ifndef WIN32 +- buf = (struct stat *) malloc(sizeof (struct stat)); ++ buf = malloc(sizeof (struct stat)); + #else + buf = (struct _stat *) malloc(sizeof (struct _stat)); + #endif +diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/timel.c cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/timel.c +--- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgen/timel.c 1997-02-04 12:34:47.000000000 -0500 ++++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgen/timel.c 2006-09-06 19:53:39.383155804 -0400 +@@ -30,6 +30,7 @@ + #include + #include + #include ++#include /* For ia64... */ + + #ifndef CLOCKS_PER_SEC + #define CLOCKS_PER_SEC CLK_TCK +diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgenu/fchtak.c cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgenu/fchtak.c +--- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/ccgenu/fchtak.c 1996-02-15 12:49:40.000000000 -0500 ++++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/ccgenu/fchtak.c 2006-09-06 19:53:39.383155804 -0400 +@@ -16,6 +16,7 @@ + return the memory pointer + */ + #include ++#include + #include "kerngen/fortchar.h" + char *fchtak(ftext,lgtext) + #if defined(CERNLIB_QMCRY) +@@ -26,7 +27,7 @@ + #endif + int lgtext; + { +- char *malloc(); ++ /* char *malloc(); - see above "#include " */ + char *ptalc, *ptuse; + char *utext; + int nalc; +diff -urNad cernlib-2005.dfsg~/src/packlib/kuip/code_kuip/getline.c cernlib-2005.dfsg/src/packlib/kuip/code_kuip/getline.c +--- cernlib-2005.dfsg~/src/packlib/kuip/code_kuip/getline.c 1998-08-25 08:47:32.000000000 -0400 ++++ cernlib-2005.dfsg/src/packlib/kuip/code_kuip/getline.c 2006-09-06 19:53:39.384155592 -0400 +@@ -585,7 +585,7 @@ + + static void + gl_puts(buf) +-char *buf; ++const char *buf; + { + /* + int len = strlen(buf); +@@ -1351,7 +1351,7 @@ + + static char * + hist_save(p) +-char *p; ++const char *p; + /* makes a copy of the string */ + { + char *s; +diff -urNad cernlib-2005.dfsg~/src/packlib/kuip/code_motif/iconwidget.c cernlib-2005.dfsg/src/packlib/kuip/code_motif/iconwidget.c +--- cernlib-2005.dfsg~/src/packlib/kuip/code_motif/iconwidget.c 1996-03-08 10:33:10.000000000 -0500 ++++ cernlib-2005.dfsg/src/packlib/kuip/code_motif/iconwidget.c 2006-09-06 19:53:39.384155592 -0400 +@@ -284,7 +284,7 @@ + Boolean in = (iw->icon.armed && really) || + iw->icon.shadow_type == XmSHADOW_IN; + +- if ((iw->primitive.shadow_thickness) > 0 && XtIsRealized (iw)) { ++ if ((iw->primitive.shadow_thickness) > 0 && XtIsRealized ((Widget)iw)) { + _XmDrawShadow (XtDisplay (iw), XtWindow (iw), + in ? iw->primitive.bottom_shadow_GC : + iw->primitive.top_shadow_GC, +@@ -372,7 +372,7 @@ + #endif + + if (iw->icon.armed) +- DrawShadow ((Widget) iw, True); ++ DrawShadow (iw, True); + } + + /************************************************************************ --- cernlib-2006.dfsg.2.orig/debian/patches/704-move-kuwhag.c-to-grafX11.sh.dpatch +++ cernlib-2006.dfsg.2/debian/patches/704-move-kuwhag.c-to-grafX11.sh.dpatch @@ -0,0 +1,23 @@ +#!/bin/sh + +## DP: Script to move the file kuwhag.c from packlib/kuip/code_kuip/kuwhag.c +## DP: into graflib/higz/higzcc. It appears to be the only file in code_kuip +## DP: that depends upon grafX11 and libX11, so it fits in better here. + +set -e +cd src + +case "$1" in + -patch) + mv packlib/kuip/code_kuip/kuwhag.c graflib/higz/higzcc/ + cp -r packlib/kuip/kuip graflib/higz/ + ;; + + -unpatch) + rm -r graflib/higz/kuip + mv graflib/higz/higzcc/kuwhag.c packlib/kuip/code_kuip/ + ;; + + *) exit 1 ;; +esac + --- cernlib-2006.dfsg.2.orig/debian/patches/205-max-path-length-to-256.dpatch +++ cernlib-2006.dfsg.2/debian/patches/205-max-path-length-to-256.dpatch @@ -0,0 +1,19 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 205-max-path-length-to-256.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Set max path length to 256 in Hbook. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/packlib/hbook/hbook/hcdire.inc /tmp/dpep.ceXWNa/cernlib-2005.05.09/src/packlib/hbook/hbook/hcdire.inc +--- cernlib-2005.05.09~/src/packlib/hbook/hbook/hcdire.inc 2003-02-07 07:13:37.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/hbook/hbook/hcdire.inc 2005-06-09 15:20:49.541661646 -0400 +@@ -20,7 +20,7 @@ + * + *CMZ : 4.20/03 28/07/93 09.33.32 by Rene Brun + *-- Author : +- PARAMETER (NLPATM=100, MXFILES=50, LENHFN=128) ++ PARAMETER (NLPATM=100, MXFILES=50, LENHFN=256) + COMMON /HCDIRN/NLCDIR,NLNDIR,NLPAT,ICDIR,NCHTOP,ICHTOP(MXFILES) + + ,ICHTYP(MXFILES),ICHLUN(MXFILES) + CHARACTER*16 CHNDIR, CHCDIR, CHPAT ,CHTOP --- cernlib-2006.dfsg.2.orig/debian/patches/110-ignore-included-lapack-rule.dpatch +++ cernlib-2006.dfsg.2/debian/patches/110-ignore-included-lapack-rule.dpatch @@ -0,0 +1,23 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 110-ignore-included-lapack-rule.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Comment out rule requiring liblapack in a subdirectory of mathlib code. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/mathlib/Imakefile /tmp/dpep.Ib8j9x/cernlib-2005.05.09/src/mathlib/Imakefile +--- cernlib-2005.05.09~/src/mathlib/Imakefile 1999-11-09 12:07:49.000000000 -0500 ++++ cernlib-2005.05.09/src/mathlib/Imakefile 2005-06-10 11:24:47.771309475 -0400 +@@ -5,9 +5,12 @@ + + LIBDIRS= gen bvsl + ++/* Lapack is independent of Cernlib and should be installed as one of ++ the build dependencies. + #ifndef WIN32 + LIBDIRS := $(LIBDIRS) lapack + #endif ++*/ + + SUBDIRS= $(LIBDIRS) + --- cernlib-2006.dfsg.2.orig/debian/patches/320-support-ifort.dpatch +++ cernlib-2006.dfsg.2/debian/patches/320-support-ifort.dpatch @@ -0,0 +1,34 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 320-support-ifort.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Support compilation with Intel's ifort compiler. + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/config/linux.cf cernlib-2005.05.09.dfsg/src/config/linux.cf +--- cernlib-2005.05.09.dfsg~/src/config/linux.cf 2006-07-05 14:40:47.890234094 -0400 ++++ cernlib-2005.05.09.dfsg/src/config/linux.cf 2006-07-05 14:41:49.656893427 -0400 +@@ -446,8 +446,8 @@ + # define OptimisedFortranFlags -O -mp1 -fp_port + # define NoOpFortranDebugFlags -O0 + # define DefaultFCOptions +-# define CernlibSystem CernlibDefaultDefines +- ++# define CernlibSystem CernlibDefaultDefines -DCERNLIB_INTELIFC ++# define CERNLIB_INTELIFC + #else + + # ifdef HasIntelefc +diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kuip/programs/kxterm/Imakefile cernlib-2005.05.09.dfsg/src/packlib/kuip/programs/kxterm/Imakefile +--- cernlib-2005.05.09.dfsg~/src/packlib/kuip/programs/kxterm/Imakefile 2006-07-05 14:40:47.633289557 -0400 ++++ cernlib-2005.05.09.dfsg/src/packlib/kuip/programs/kxterm/Imakefile 2006-07-05 14:42:42.088557013 -0400 +@@ -14,6 +14,9 @@ + + #if defined(CERNLIB_UNIX) + CLIBS= -G Motif kernlib ++# if defined(CERNLIB_INTELIFC) ++CLIBS= $(CLIBS) -nofor_main ++# endif + #endif + + #if defined(CERNLIB_VAXVMS) --- cernlib-2006.dfsg.2.orig/debian/patches/702-patch-Imakefiles-for-packlib-mathlib.dpatch +++ cernlib-2006.dfsg.2/debian/patches/702-patch-Imakefiles-for-packlib-mathlib.dpatch @@ -0,0 +1,130 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 702-patch-Imakefiles-for-packlib-mathlib.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Hacks to Imakefiles to go along with the 702 shellscript for moving +## DP: files around. + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/mathlib/gen/d/Imakefile /tmp/dpep.aVAPwe/cernlib-2005.05.09/src/mathlib/gen/d/Imakefile +--- cernlib-2005.05.09~/src/mathlib/gen/d/Imakefile 2005-06-10 22:19:15.720962444 -0400 ++++ cernlib-2005.05.09/src/mathlib/gen/d/Imakefile 2005-06-10 22:24:26.783925145 -0400 +@@ -1,6 +1,8 @@ + DoIncludePackage(gen) + #include "pilot.h" + ++/* rgmlt*.F have been moved into packlib/hbook to remove circular dependencies. ++ --Kevin McCarty, for Debian. */ + SRCS_F= arithm.F c128.F c256.F c512.F c64.F cauchy64.F cft.F cfstft.F \ @@\ + rfstft.F cgauss.F d107d1.F d107r1.F d501l1.F d501l2.F d501n1.F \ @@\ + d501n2.F d501p1.F d501p2.F d501sf.F d700su.F d701bd.F \ @@\ +@@ -10,14 +12,14 @@ + epditr.F epdje.F epdloc.F epdsrt.F epdtab.F errorf.F esolve.F \ @@\ + fcn1.F fftrc.F fumili.F gauss.F i128.F i32.F i64.F linsq.F \ @@\ + mconv.F mft.F minfc.F minsq.F monito.F newro.F old506.F radapt.F \ @@\ +- radmul.F rca.F rfrdh164.F rfrdh264.F rft.F rgmlt64.F rgquad.F \ @@\ ++ radmul.F rca.F rfrdh164.F rfrdh264.F rft.F rgquad.F \ @@\ + rgs56p.F rgset.F riwiad.F riwibd.F rknys64.F rknysd.F rkstp.F \ @@\ + rpa.F rps.F rrkstp.F rsa.F rtriint.F s128.F s256.F s512.F \ @@\ + s64.F scal.F sgz.F simps.F synt.F traper.F triint.F vd01a.F + + #if defined(CERNLIB_DOUBLE) + SRCS_F:= $(SRCS_F) cgauss64.F dgquad.F dgset.F gauss64.F minfc64.F \ @@\ +- rcauch.F rdeqbs.F rdeqmr.F rderiv.F rfrdh1.F rgmlt.F rkstp64.F \ @@\ ++ rcauch.F rdeqbs.F rdeqmr.F rderiv.F rfrdh1.F rkstp64.F \ @@\ + simps64.F triint64.F + #if defined(CERNLIB_LINUX) + /* -O3 optimization breaks in g77 3.2 */ +@@ -26,7 +28,7 @@ + #endif + #else + SRCS_F:= $(SRCS_F) cgauss128.F cauchy.F cauchy128.F deqbs128.F deqmr128.F \ @@\ +- deriv128.F minfc128.F rfrdh128.F rgmlt128.F rkstp128.F simps128.F \ @@\ ++ deriv128.F minfc128.F rfrdh128.F rkstp128.F simps128.F \ @@\ + triint128.F + #endif + +diff -urNad cernlib-2005.05.09/src/mathlib/gen/Imakefile /tmp/dpep.aVAPwe/cernlib-2005.05.09/src/mathlib/gen/Imakefile +--- cernlib-2005.05.09~/src/mathlib/gen/Imakefile 1996-10-02 12:09:45.000000000 -0400 ++++ cernlib-2005.05.09/src/mathlib/gen/Imakefile 2005-06-10 22:20:55.683416711 -0400 +@@ -8,7 +8,8 @@ + IMAKE_DEFINES=-DFortranDoesCpp=NO + #endif + +-LIBDIRS= a b c d divon e f g h j m n s u v x ++/* "n" subdir moved to packlib/hbook/ --Kevin McCarty, for Debian */ ++LIBDIRS= a b c d divon e f g h j m s u v x + + SUBDIRS= $(LIBDIRS) gen tests + +diff -urNad cernlib-2005.05.09/src/mathlib/hbook/Imakefile /tmp/dpep.aVAPwe/cernlib-2005.05.09/src/mathlib/hbook/Imakefile +--- cernlib-2005.05.09~/src/mathlib/hbook/Imakefile 1969-12-31 19:00:00.000000000 -0500 ++++ cernlib-2005.05.09/src/mathlib/hbook/Imakefile 2004-06-30 21:54:11.000000000 -0400 +@@ -0,0 +1,12 @@ ++/* this Imakefile used to get hdiff to compile within the mathlib tree */ ++ ++#define IHaveSubdirs ++#define PassCDebugFlags ++ ++LIBDIRS= hdiff ++SUBDIRS= $(LIBDIRS) hbook ++ ++TopOfPackage(hbook) ++SubdirLibraryTarget(hbook,$(LIBDIRS)) ++DoIncludePackage(hbook) ++InstallIncludeSubdirs(hbook) +diff -urNad cernlib-2005.05.09/src/mathlib/Imakefile /tmp/dpep.aVAPwe/cernlib-2005.05.09/src/mathlib/Imakefile +--- cernlib-2005.05.09~/src/mathlib/Imakefile 2005-06-10 22:19:15.834937877 -0400 ++++ cernlib-2005.05.09/src/mathlib/Imakefile 2005-06-10 22:20:05.279280394 -0400 +@@ -3,7 +3,7 @@ + #define PassCDebugFlags + + +-LIBDIRS= gen bvsl ++LIBDIRS= gen bvsl hbook /* hdiff stuff moved from packlib */ + + /* Lapack is independent of CERNLIB and should be installed as one of + the build dependencies. +diff -urNad cernlib-2005.05.09/src/packlib/hbook/d/Imakefile /tmp/dpep.aVAPwe/cernlib-2005.05.09/src/packlib/hbook/d/Imakefile +--- cernlib-2005.05.09~/src/packlib/hbook/d/Imakefile 1969-12-31 19:00:00.000000000 -0500 ++++ cernlib-2005.05.09/src/packlib/hbook/d/Imakefile 2004-06-30 21:54:11.000000000 -0400 +@@ -0,0 +1,25 @@ ++/* this Imakefile is used to get some things from mathlib/gen/d to compile ++ within the packlib/hbook tree */ ++ ++DoIncludePackage(gen) ++#include "pilot.h" ++ ++SRCS_F= rgmlt64.F ++ ++#if defined(CERNLIB_DOUBLE) ++SRCS_F:= $(SRCS_F) rgmlt.F ++#else ++SRCS_F:= $(SRCS_F) rgmlt128.F ++#endif ++ ++#ifdef CERNLIB_HPUX ++FORTRANOPTIONS += -WF,-P ++#endif ++ ++#if defined(CERNLIB_SGI) ++IMAKE_DEFINES=-DFortranDoesCpp=NO ++#endif ++ ++FORTRANSAVEOPTION = FortranSaveFlags ++ ++SubdirLibraryTarget(NullParameter,NullParameter) +diff -urNad cernlib-2005.05.09/src/packlib/hbook/Imakefile /tmp/dpep.aVAPwe/cernlib-2005.05.09/src/packlib/hbook/Imakefile +--- cernlib-2005.05.09~/src/packlib/hbook/Imakefile 1997-04-28 04:21:23.000000000 -0400 ++++ cernlib-2005.05.09/src/packlib/hbook/Imakefile 2005-06-10 22:26:27.063010420 -0400 +@@ -2,7 +2,9 @@ + #define IHaveSubdirs + #define PassCDebugFlags + +-LIBDIRS= hdiff hmerge hquad chbook fpclassc \ @@\ ++/* hdiff moved to mathlib to avoid circular DLL dependencies; "d" and "n" ++ moved here from mathlib for the same reasons */ ++LIBDIRS= d n hmerge hquad chbook fpclassc \ @@\ + hrz code hmcstat hntup + + #ifdef CERNLIB_VAX --- cernlib-2006.dfsg.2.orig/debian/patches/113-postscript-fix.dpatch +++ cernlib-2006.dfsg.2/debian/patches/113-postscript-fix.dpatch @@ -0,0 +1,27 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 113-postscript-fix.dpatch by Kevin B. McCarty +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Fix for minor postscript issue reported by Angelo Graziosi. +## DP: Resurrected from old Cernlib 2005 patch by Frank Dohrmann. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/graflib/higz/ipost/ipdef.F cernlib-2006.dfsg.2/src/graflib/higz/ipost/ipdef.F +--- cernlib-2006.dfsg.2~/src/graflib/higz/ipost/ipdef.F 2006-08-28 15:45:41.000000000 +0200 ++++ cernlib-2006.dfsg.2/src/graflib/higz/ipost/ipdef.F 2009-03-13 04:27:31.000000000 +0100 +@@ -344,7 +344,6 @@ + ENDIF + * + CALL IPPSTR('%%EndProlog@') +- IF (MODE.NE.3) CALL IPPSTR('%%Page: number 1@') + * + CALL IPPSTR('%%BeginSetup@') + CALL IPPSTR('%%EndSetup@') +@@ -367,6 +366,7 @@ + IF (MODE.NE.3) CALL IPSVRT(1) + * + NBSAV0 = NBSAVE ++ IF (MODE.NE.3) CALL IPPSTR('%%Page: number 1@') + * + RETURN + * --- cernlib-2006.dfsg.2.orig/debian/patches/300-skip-duplicate-lenocc.dpatch +++ cernlib-2006.dfsg.2/debian/patches/300-skip-duplicate-lenocc.dpatch @@ -0,0 +1,30 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 300-skip-duplicate-lenocc.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Only compile one of the two "lenocc()" functions. + +@DPATCH@ +diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kerngen/ccgen/Imakefile cernlib-2005.05.09.dfsg/src/packlib/kernlib/kerngen/ccgen/Imakefile +--- cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kerngen/ccgen/Imakefile 2002-09-19 16:44:52.000000000 +0000 ++++ cernlib-2005.05.09.dfsg/src/packlib/kernlib/kerngen/ccgen/Imakefile 2005-11-28 19:59:28.690293288 +0000 +@@ -19,7 +19,9 @@ + SRCS_C += apofsz.c + #endif + +-#if defined(CERNLIB_WINNT) ++#if defined(CERNLIB_WINNT) || defined(CERNLIB_LINUX) ++/* Do not use lenocc.c in Linux; favor packlib/kernlib/kerngen/tcgen/lenocc.F ++ * instead. --Kevin McCarty, for Debian */ + SRCS_C += lnblnk.c + #endif + +@@ -29,7 +31,7 @@ + + #if defined(CERNLIB_DECS) || defined(CERNLIB_QMVAOS) \ + || defined(CERNLIB_HPUX) || defined(CERNLIB_IBMRT) || defined(CERNLIB_IBMRTD) \ +- || defined(CERNLIB_OS9) || defined(CERNLIB_LINUX) ++ || defined(CERNLIB_OS9) + SRCS_C += lenocc.c lnblnk.c + #endif + --- cernlib-2006.dfsg.2.orig/debian/patches/807-static-link-some-tests-on-64-bit.dpatch +++ cernlib-2006.dfsg.2/debian/patches/807-static-link-some-tests-on-64-bit.dpatch @@ -0,0 +1,85 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 807-static-link-some-tests-on-64-bit.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Statically link certain test programs against CERN libraries on +## DP: 64-bit systems, since CERNLIB's memory management is hopelessly +## DP: broken there. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/packlib/ffread/test/Imakefile cernlib-2006.dfsg.2/src/packlib/ffread/test/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/ffread/test/Imakefile 2007-12-17 17:53:41.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/ffread/test/Imakefile 2007-12-17 17:53:50.000000000 +0000 +@@ -2,7 +2,11 @@ + + DefinePackageLibrary(NullParameter) + ++#if defined(CERNLIB_LINUX) && defined(CERNLIB_QMLXIA64) ++CernlibFortranStaticTarget(ffread,$(OBJS),NullParameter,NullParameter,kernlib packlib) ++#else + CernlibFortranProgramTarget(ffread,$(OBJS),NullParameter,NullParameter,kernlib packlib) ++#endif + + TestTarget(ffread,NullParameter,test.input) + +diff -urNad cernlib-2006.dfsg.2~/src/packlib/hbook/examples/Imakefile cernlib-2006.dfsg.2/src/packlib/hbook/examples/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/hbook/examples/Imakefile 2007-12-17 17:53:41.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/hbook/examples/Imakefile 2007-12-17 17:55:51.000000000 +0000 +@@ -5,6 +5,12 @@ + + DefinePackageLibrary(hbtlib) + ++#if defined(CERNLIB_LINUX) && defined(CERNLIB_QMLXIA64) ++#undef CernlibFortranProgramTarget ++#define CernlibFortranProgramTarget(a,b,c,d,e) \ ++ CernlibFortranStaticTarget(a,b,c,d,e) ++#endif ++ + CernlibFortranProgramTarget(hbtest,hexam.o,libhbtlib.a,libhbtlib.a,packlib) + + CernlibFortranProgramTarget(hbdiff,htdiffb.o,libhbtlib.a,libhbtlib.a,mathlib) +diff -urNad cernlib-2006.dfsg.2~/src/packlib/kuip/examples/Imakefile cernlib-2006.dfsg.2/src/packlib/kuip/examples/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/kuip/examples/Imakefile 2007-12-17 17:53:41.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/kuip/examples/Imakefile 2007-12-17 17:53:50.000000000 +0000 +@@ -5,7 +5,11 @@ + + DefinePackageLibrary(NullParameter) + ++#if defined(CERNLIB_LINUX) && defined(CERNLIB_QMLXIA64) ++CernlibFortranStaticTarget(ktest,$(OBJS),NullParameter,NullParameter,graflib packlib kernlib) ++#else + CernlibFortranProgramTarget(ktest,$(OBJS),NullParameter,NullParameter,graflib packlib kernlib) ++#endif + + TestTarget(ktest,NullParameter,ktest.inp) + +diff -urNad cernlib-2006.dfsg.2~/src/packlib/zbook/test/Imakefile cernlib-2006.dfsg.2/src/packlib/zbook/test/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/zbook/test/Imakefile 2007-12-17 17:53:41.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/zbook/test/Imakefile 2007-12-17 17:53:50.000000000 +0000 +@@ -5,6 +5,10 @@ + + SubdirLibraryTarget(zbookt,NullParameter) + ++#if defined(CERNLIB_LINUX) && defined(CERNLIB_QMLXIA64) ++CernlibFortranStaticTarget(zexam,zexam.o,libzbookt.a,libzbookt.a,packlib) ++#else + CernlibFortranProgramTarget(zexam,zexam.o,libzbookt.a,libzbookt.a,packlib) ++#endif + + TestTarget(zexam,NullParameter,NullParameter) +diff -urNad cernlib-2006.dfsg.2~/src/packlib/zebra/test/Imakefile cernlib-2006.dfsg.2/src/packlib/zebra/test/Imakefile +--- cernlib-2006.dfsg.2~/src/packlib/zebra/test/Imakefile 2007-12-17 17:53:41.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/packlib/zebra/test/Imakefile 2007-12-17 17:53:50.000000000 +0000 +@@ -41,6 +41,12 @@ + + testrz: zebrz1 zebrz2 zebrz3 + ++#if defined(CERNLIB_LINUX) && defined(CERNLIB_QMLXIA64) ++#undef CernlibFortranProgramTarget ++#define CernlibFortranProgramTarget(a,b,c,d,e) \ ++ CernlibFortranStaticTarget(a,b,c,d,e) ++#endif ++ + CernlibFortranProgramTarget(zebmz1,zebmz1.o,libzebtlib.a,libzebtlib.a,kernlib packlib) + + CernlibFortranProgramTarget(zebfz1,zebfz1.o,libzebtlib.a,libzebtlib.a,kernlib packlib) --- cernlib-2006.dfsg.2.orig/debian/patches/212-print-test-results.dpatch +++ cernlib-2006.dfsg.2/debian/patches/212-print-test-results.dpatch @@ -0,0 +1,28 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 212-print-test-results.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Explicitly output test program exit codes. + +@DPATCH@ +diff -urNad cernlib-2006.dfsg.2~/src/config/Imake.rules cernlib-2006.dfsg.2/src/config/Imake.rules +--- cernlib-2006.dfsg.2~/src/config/Imake.rules 2005-04-18 15:39:25.000000000 +0000 ++++ cernlib-2006.dfsg.2/src/config/Imake.rules 2007-12-13 18:52:12.000000000 +0000 +@@ -2373,13 +2373,15 @@ + test:: ProgramTargetName(program) data inputdata @@\ + @echo Testing $(PACKAGE_NAME) @@\ + @echo " ... using" program @@\ +- @Concat(.,$(PATHSEP))ProgramTargetName(program) @@\ ++ @Concat(.,$(PATHSEP))ProgramTargetName(program) ; \ @@\ ++ result="$$?" ; echo "Test result = $$result" ; exit "$$result" @@\ + @@\ + else @@\ + test:: ProgramTargetName(program) data inputdata @@\ + @echo Testing $(PACKAGE_NAME) @@\ + @echo " ... using" program @@\ +- @Concat(.,$(PATHSEP))ProgramTargetName(program) < inputdata @@\ ++ @Concat(.,$(PATHSEP))ProgramTargetName(program) < inputdata ; \ @@\ ++ result="$$?" ; echo "Test result = $$result" ; exit "$$result" @@\ + @@\ + endif @@\ + @@\ --- cernlib-2006.dfsg.2.orig/debian/patches/306-patch-assert.h-for-makedepend.dpatch +++ cernlib-2006.dfsg.2/debian/patches/306-patch-assert.h-for-makedepend.dpatch @@ -0,0 +1,165 @@ +#! /bin/sh /usr/share/dpatch/dpatch-run +## 306-patch-assert.h-for-makedepend.dpatch by +## +## All lines beginning with `## DP:' are a description of the patch. +## DP: Include local copy of assert.h with a workaround for a bug of +## DP: makedepend (cf. Debian bug # 171908). + +@DPATCH@ +diff -urNad cernlib-2005.05.09/src/include/assert.h /tmp/dpep.9sKNsJ/cernlib-2005.05.09/src/include/assert.h +--- cernlib-2005.05.09~/src/include/assert.h 1969-12-31 19:00:00.000000000 -0500 ++++ cernlib-2005.05.09/src/include/assert.h 2005-06-09 12:50:41.751880968 -0400 +@@ -0,0 +1,153 @@ ++#ifndef CERNLIB_LINUX ++# include "/usr/include/assert.h" ++#else ++ ++/* Copyright (C) 1991,1992,1994-2001,2003 Free Software Foundation, Inc. ++ This file is part of the GNU C Library. ++ ++ The GNU C Library is free software; you can redistribute it and/or ++ modify it under the terms of the GNU Lesser General Public ++ License as published by the Free Software Foundation; either ++ version 2.1 of the License, or (at your option) any later version. ++ ++ The GNU C Library is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++ Lesser General Public License for more details. ++ ++ You should have received a copy of the GNU Lesser General Public ++ License along with the GNU C Library; if not, write to the Free ++ Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA ++ 02111-1307 USA. */ ++ ++/* ++ * ISO C99 Standard: 7.2 Diagnostics ++ */ ++ ++#ifdef _ASSERT_H ++ ++# undef _ASSERT_H ++# undef assert ++# undef __ASSERT_VOID_CAST ++ ++# ifdef __USE_GNU ++# undef assert_perror ++# endif ++ ++#endif /* assert.h */ ++ ++#define _ASSERT_H 1 ++#include ++ ++#if defined __cplusplus && __GNUC_PREREQ (2,95) ++# define __ASSERT_VOID_CAST static_cast ++#else ++# define __ASSERT_VOID_CAST (void) ++#endif ++ ++/* void assert (int expression); ++ ++ If NDEBUG is defined, do nothing. ++ If not, and EXPRESSION is zero, print an error message and abort. */ ++ ++#ifdef NDEBUG ++ ++# define assert(expr) (__ASSERT_VOID_CAST (0)) ++ ++/* void assert_perror (int errnum); ++ ++ If NDEBUG is defined, do nothing. If not, and ERRNUM is not zero, print an ++ error message with the error text for ERRNUM and abort. ++ (This is a GNU extension.) */ ++ ++# ifdef __USE_GNU ++# define assert_perror(errnum) (__ASSERT_VOID_CAST (0)) ++# endif ++ ++#else /* Not NDEBUG. */ ++ ++#ifndef _ASSERT_H_DECLS ++#define _ASSERT_H_DECLS ++__BEGIN_DECLS ++ ++/* This prints an "Assertion failed" message and aborts. */ ++extern void __assert_fail (__const char *__assertion, __const char *__file, ++ unsigned int __line, __const char *__function) ++ __THROW __attribute__ ((__noreturn__)); ++ ++/* Likewise, but prints the error text for ERRNUM. */ ++extern void __assert_perror_fail (int __errnum, __const char *__file, ++ unsigned int __line, ++ __const char *__function) ++ __THROW __attribute__ ((__noreturn__)); ++ ++ ++/* The following is not at all used here but needed for standard ++ compliance. */ ++extern void __assert (const char *__assertion, const char *__file, int __line) ++ __THROW __attribute__ ((__noreturn__)); ++ ++ ++__END_DECLS ++#endif /* Not _ASSERT_H_DECLS */ ++ ++/* For the macro definition we use gcc's __builtin_expect if possible ++ to generate good code for the non-error case. gcc 3.0 is a good ++ enough estimate for when the feature became available. */ ++# if __GNUC_PREREQ (3, 0) ++# define assert(expr) \ ++ (__ASSERT_VOID_CAST (__builtin_expect (!!(expr), 1) ? 0 : \ ++ (__assert_fail (__STRING(expr), __FILE__, __LINE__, \ ++ __ASSERT_FUNCTION), 0))) ++# else ++# define assert(expr) \ ++ (__ASSERT_VOID_CAST ((expr) ? 0 : \ ++ (__assert_fail (__STRING(expr), __FILE__, __LINE__, \ ++ __ASSERT_FUNCTION), 0))) ++# endif ++ ++# ifdef __USE_GNU ++# if __GNUC_PREREQ (3, 0) ++# define assert_perror(errnum) \ ++ (__ASSERT_VOID_CAST (__builtin_expect (!(errnum), 1) ? 0 : \ ++ (__assert_perror_fail ((errnum), __FILE__, __LINE__, \ ++ __ASSERT_FUNCTION), 0))) ++# else ++# define assert_perror(errnum) \ ++ (__ASSERT_VOID_CAST (!(errnum) ? 0 : \ ++ (__assert_perror_fail ((errnum), __FILE__, __LINE__, \ ++ __ASSERT_FUNCTION), 0))) ++# endif ++# endif ++ ++/* Version 2.4 and later of GCC define a magical variable `__PRETTY_FUNCTION__' ++ which contains the name of the function currently being defined. ++ This is broken in G++ before version 2.6. ++ C9x has a similar variable called __func__, but prefer the GCC one since ++ it demangles C++ function names. */ ++ ++/* The following commented-out line breaks makedepend (bug # 171908); a local ++ * patched version of assert.h is therefore included. ++ * --Kevin McCarty, for Debian */ ++/* # if defined __cplusplus ? __GNUC_PREREQ (2, 6) : __GNUC_PREREQ (2, 4) */ ++ ++/* begin fix to work around Debian Bug # 171908 */ ++# if defined __cplusplus ++# if __GNUC_PREREQ (2, 6) ++# define __ASSERT_FUNCTION __PRETTY_FUNCTION__ ++# endif ++# elif __GNUC_PREREQ (2, 4) ++/* end fix */ ++ ++# define __ASSERT_FUNCTION __PRETTY_FUNCTION__ ++# else ++# if defined __STDC_VERSION__ && __STDC_VERSION__ >= 199901L ++# define __ASSERT_FUNCTION __func__ ++# else ++# define __ASSERT_FUNCTION ((__const char *) 0) ++# endif ++# endif ++ ++#endif /* NDEBUG. */ ++ ++#endif /* CERNLIB_LINUX */