rpms/cernlib/devel cernlib-211-support-amd64-and-itanium.dpatch, NONE, 1.1 cernlib-fedora_desktop.patch, NONE, 1.1 cernlib-man_static.patch, NONE, 1.1 cernlib-script.patch, NONE, 1.1 cernlib-segf_eudtest.patch, NONE, 1.1 cernlib-soname.patch, NONE, 1.1 cernlib-test.patch, NONE, 1.1 geant321-109-fix-broken-xsneut95.dat-link.dpatch, NONE, 1.1 mclibs-321-support-gfortran.dpatch, NONE, 1.1 npatchy-curdir.patch, NONE, 1.1 npatchy-np_flags.patch, NONE, 1.1 patchy-use_OPT.patch, NONE, 1.1 paw-120-fix-mlp-cdf-file.dpatch, NONE, 1.1 paw-121-call-gfortran-in-cscrexec.dpatch, NONE, 1.1 paw-211-support-amd64-and-itanium.dpatch, NONE, 1.1 paw-706-use-external-xbae-and-xaw.dpatch, NONE, 1.1 .cvsignore, 1.4, 1.5 315-fixes-for-MacOSX.dpatch, 1.3, 1.4 cernlib-115-rsrtnt64-goto-outer-block.dpatch, 1.2, 1.3 cernlib-202-fix-includes-in-minuit-example.dpatch, 1.1, 1.2 cernlib-211-support-digital-alpha.dpatch, 1.1, 1.2 cernlib-304-update-Imake-config-files.dpatch, 1.1, 1.2 cernlib-318-additional-gcc-3.4-fixes.dpatch, 1.1, 1.2 cernlib-321-support-gfortran.dpatch, 1.1, 1.2 cernlib-803-link-binaries-dynamically.dpatch, 1.1, 1.2 cernlib-805-expunge-missing-mathlib-kernlib-symbols.dpatch, 1.1, 1.2 cernlib-deadpool.txt, 1.2, 1.3 cernlib-enforce-FHS.diff, 1.1, 1.2 cernlib-fortify.patch, 1.1, 1.2 cernlib-remove-deadpool, 1.1, 1.2 cernlib.spec, 1.38, 1.39 geant321-001-fix-missing-fluka.dpatch, 1.1, 1.2 mclibs-102-dont-optimize-some-code.dpatch, 1.1, 1.2 mclibs-206-herwig-uses-DBLE-not-REAL.dpatch, 1.1, 1.2 paw-119-fix-compiler-warnings.dpatch, 1.1, 1.2 paw-207-compile-temp-libs-with-fPIC.dpatch, 1.1, 1.2 paw-801-non-optimized-rule-uses-fPIC-g.dpatch, 1.1, 1.2 sources, 1.5, 1.6 211-support-amd64-and-itanium.dpatch, 1.1, NONE cernlib-113-cups-postscript-fix.dpatch, 1.1, NONE cernlib-314-permit-using-regcomp-for-re_comp.dpatch, 1.1, NONE cernlib-cernlib_kernlib.patch, 1.1, NONE cernlib-hwhiga_use_dimag.diff, 1.1, NONE cernlib-hwuli2_use_dimag.diff, 1.1, NONE cernlib_2005.dfsg-3.diff, 1.1, NONE geant321_3.21.14.dfsg-1.diff, 1.1, NONE mclibs_2005.dfsg-1.diff, 1.1, NONE patchy-case.patch, 1.2, NONE patchy-fcasplit.patch, 1.2, NONE patchy-yexpand.diff, 1.1, NONE paw_2.14.04-3.diff, 1.1, NONE

Patrice Dumas (pertusus) fedora-extras-commits at redhat.com
Sat Apr 21 14:35:59 UTC 2007


Author: pertusus

Update of /cvs/extras/rpms/cernlib/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv24804

Modified Files:
	.cvsignore 315-fixes-for-MacOSX.dpatch 
	cernlib-115-rsrtnt64-goto-outer-block.dpatch 
	cernlib-202-fix-includes-in-minuit-example.dpatch 
	cernlib-211-support-digital-alpha.dpatch 
	cernlib-304-update-Imake-config-files.dpatch 
	cernlib-318-additional-gcc-3.4-fixes.dpatch 
	cernlib-321-support-gfortran.dpatch 
	cernlib-803-link-binaries-dynamically.dpatch 
	cernlib-805-expunge-missing-mathlib-kernlib-symbols.dpatch 
	cernlib-deadpool.txt cernlib-enforce-FHS.diff 
	cernlib-fortify.patch cernlib-remove-deadpool cernlib.spec 
	geant321-001-fix-missing-fluka.dpatch 
	mclibs-102-dont-optimize-some-code.dpatch 
	mclibs-206-herwig-uses-DBLE-not-REAL.dpatch 
	paw-119-fix-compiler-warnings.dpatch 
	paw-207-compile-temp-libs-with-fPIC.dpatch 
	paw-801-non-optimized-rule-uses-fPIC-g.dpatch sources 
Added Files:
	cernlib-211-support-amd64-and-itanium.dpatch 
	cernlib-fedora_desktop.patch cernlib-man_static.patch 
	cernlib-script.patch cernlib-segf_eudtest.patch 
	cernlib-soname.patch cernlib-test.patch 
	geant321-109-fix-broken-xsneut95.dat-link.dpatch 
	mclibs-321-support-gfortran.dpatch npatchy-curdir.patch 
	npatchy-np_flags.patch patchy-use_OPT.patch 
	paw-120-fix-mlp-cdf-file.dpatch 
	paw-121-call-gfortran-in-cscrexec.dpatch 
	paw-211-support-amd64-and-itanium.dpatch 
	paw-706-use-external-xbae-and-xaw.dpatch 
Removed Files:
	211-support-amd64-and-itanium.dpatch 
	cernlib-113-cups-postscript-fix.dpatch 
	cernlib-314-permit-using-regcomp-for-re_comp.dpatch 
	cernlib-cernlib_kernlib.patch cernlib-hwhiga_use_dimag.diff 
	cernlib-hwuli2_use_dimag.diff cernlib_2005.dfsg-3.diff 
	geant321_3.21.14.dfsg-1.diff mclibs_2005.dfsg-1.diff 
	patchy-case.patch patchy-fcasplit.patch patchy-yexpand.diff 
	paw_2.14.04-3.diff 
Log Message:
* Fri Apr 13 2007 Patrice Dumas <pertusus at free.fr> 2006-1
- update to cernlib 2006
- build with gfortran
- use system Xbae and Xaw
- ship man pages, app-defaults, icons and paw++ desktop file (from debian)
- run tests
- use optflags in patchy4
- bootstrap npatchy with p5boot (instead of using patchy4)
- fix npatchy build



***** Error reading new file: [Errno 2] No such file or directory: 'cernlib-211-support-amd64-and-itanium.dpatch'
cernlib-fedora_desktop.patch:

--- NEW FILE cernlib-fedora_desktop.patch ---
--- cernlib-2006/paw-2.14.04.dfsg/debian/add-ons/misc/paw++.desktop.fedora_desktop	2007-04-14 23:41:45.000000000 +0200
+++ cernlib-2006/paw-2.14.04.dfsg/debian/add-ons/misc/paw++.desktop	2007-04-14 23:44:39.000000000 +0200
@@ -7,5 +7,5 @@
 Comment[en_GB]=Analyse and graphically present experimental data
 Type=Application
 Exec=paw++
-Icon=paw48x48
-Categories=Application;Physics;Science;
+Icon=paw
+Categories=Physics;Science;Graphics;

cernlib-man_static.patch:

--- NEW FILE cernlib-man_static.patch ---
--- cernlib-2006/2006/src/man/man1/cernlib.1.man_static	1998-05-19 18:32:03.000000000 +0200
+++ cernlib-2006/2006/src/man/man1/cernlib.1	2007-04-14 00:59:29.000000000 +0200
@@ -1,18 +1,18 @@
-.TH cernlib 1 "$Date: 1998/05/19 16:32:03 $" "CERN Program Library"
+.TH cernlib-static 1 "$Date: 1998/05/19 16:32:03 $" "CERN Program Library"
 "CERNlib commands" 
 .ds )H Cern Program Library
-.ds ]W cernlib
+.ds ]W cernlib-static
 .SH NAME
-cernlib \- get libraries needed to link with CERN Program Library
+cernlib-static \- get libraries needed to link with CERN Program Library
 .SH SYNOPSIS
-.B cernlib
+.B cernlib-static
 .RI [options]
 .I library[/version]
 .I ...
 
 .SH DESCRIPTION
 
-.B cernlib
+.B cernlib-static
 writes to standard output a list of object libraries needed to link 
 a program with the given 
 .I library(s)
@@ -27,7 +27,7 @@
 
 .SS Options
 
-.B cernlib 
+.B cernlib-static 
 recognizes the following options:
 
 .TP 11
@@ -52,6 +52,10 @@
 obsolete option. Ignored.
 
 .TP 11
+.B -l
+Don't link against system lapack and blas.
+
+.TP 11
 .B -u
 do 
 .B not
@@ -73,7 +77,7 @@
 
 .SS USAGE
 
-.B cernlib 
+.B cernlib-static 
 expects to find the CERNlib directory tree in /cern; if your system does
 not have this, set the environment variable CERN to contain the name of the
 root directory for the CERNlib tree.
@@ -91,16 +95,16 @@
 .SS EXAMPLES
 
 As 
-.B cernlib
+.B cernlib-static
 writes the list of libraries to standard output, using it as a command will 
-show the list of libraries generated by cernlib. Also, it can be used like
+show the list of libraries generated by cernlib-static. Also, it can be used like
 other commands in the command line surrounded by back quotes(`). 
 At CERN you should use the hepf77 command to link on your system as this
 gives the compiler parameters which are compatible with Cernlib  
 (in particular for xlf on IBM/RS6000 and fort77 on HP/UX ) 
 you could type:
 .RS 5
-hepf77 your.o `cernlib`
+hepf77 your.o `cernlib-static`
 .RE
 to link your object file with routines from packlib and kernlib; you need 
 not specify packlib, as this is added automatically. Also all
@@ -108,7 +112,7 @@
 If your application uses graflib and the Motif interface, the command would
 be:
 .RS 5
-hepf77 your.o `cernlib graflib/Motif`
+hepf77 your.o `cernlib-static graflib/Motif`
 .RE
 Again packlib need not be specified.
 .PP
@@ -117,15 +121,15 @@
 .RS 5
  .profile for sh, ksh or similar
 .RS 5
-CERNLIB=`cernlib graflib`; export CERNLIB
+CERNLIB=`cernlib-static graflib`; export CERNLIB
 .RE
  .login for users of csh of similar
 .RS 5
-setenv CERNLIB "`cernlib graflib`"
+setenv CERNLIB "`cernlib-static graflib`"
 .RE
 .RE
 The CERNLIB variable can then be used in the link command instead of
-calling the cernlib command.
+calling the cernlib-static command.
 
 .SS BUGS
 
@@ -141,7 +145,7 @@
 
 .SS FILES
 
-The cernlib command is available in the /cern/pro/bin directory 
+The cernlib-static command is available in the /cern/pro/bin directory 
 in the CERNlib tree. 
 
 .SS CONTACT Address
@@ -153,5 +157,5 @@
 Your report must state which version of CERNlib you are using, or the output of
 the command:
 .RS 5
-what `which cernlib`
+what `which cernlib-static`
 .RE

cernlib-script.patch:

--- NEW FILE cernlib-script.patch ---
--- cernlib-2006/2006/src/scripts/cernlib.script	2006-12-07 14:26:55.000000000 +0100
+++ cernlib-2006/2006/src/scripts/cernlib	2007-04-14 01:01:49.000000000 +0200
@@ -16,12 +16,17 @@
   [ -z "$CERN_LEVEL" ] && gver="pro" || gver="$CERN_LEVEL"
  
   _P=0  ; _p=0 ;   _u=0 ; Gsys=""
+  #default is to use dynamic lapack
+  _l=1 ;
+  dynlapack=0;
+  dynxbae=0;
   while [ $# -gt 0 ]
   do case $1 in
        -G) Gsys=$2   ; shift ;;
        -P) _P=1              ;;
        -s) _s="is an obsolete option"     ;;
        -u) _u=1 ; _p=1       ;;
+       -l) _l=0              ;;
        -v) gver=$2   ; shift ;;
        --) shift ; break     ;;
         *)         break     ;;
@@ -46,14 +51,35 @@
       [ $# -eq 2 -a $1 != "graflib" ] && lver=$2
       dir=$CERN/$lver/lib
          ln=$1
-      if [ $1 = "kernlib" -o $1 = "packlib" ] ; then
+      if [ $1 = "kernlib" ]; then
          _p=1
       fi
+      if [ $1 = "packlib" ]; then
+         _p=1
+         ln="packlib-lesstif.a $dir/libpacklib.a $dir/libkernlib"
+         [ -z "$Gsys" ] && Gsys="Motif"
+      fi
          [ $1 = "genlib"  ] && ln="mathlib.a $dir/libphtools"
          [ $1 = "bvsl"    ] && ln="mathlib"
          [ $1 = "mpalib"  ] && ln="mathlib"
-         [ $1 = "lapack"  ] && ln="lapack3.a $dir/libblas"
-	 [ $1 = "pawlib"  ] && ln="pawlib.a $dir/liblapack3.a $dir/libblas"
+         if [ $_l -eq 0 ] ; then
+           if [ $1 = "pawlib"  ]; then 
+              ln="pawlib-lesstif.a $dir/libpawlib.a $dir/liblapack3.a $dir/libblas"
+              dynxbae=1
+           fi
+           [ $1 = "lapack"  ] && ln="lapack3.a $dir/libblas"
+         else
+           if [ $1 = "pawlib"  ] ; then 
+              ln="pawlib-lesstif.a $dir/libpawlib"
+              [ -z "$Gsys" ] && Gsys="Motif"
+              dynxbae=1
+              dynlapack=1
+           fi
+           if [ $1 = "lapack"  ] ; then
+              ln=""
+              dynlapack=1
+           fi
+         fi
          [ $1 = "pythia"  ] && ln="jetset"
       if [ $1 = "GKS" -o $1 = "gks" ] ; then
          drv="X11" ; glib="$1" ; dir="$CERN/gks/$lver/lib"
@@ -69,10 +95,12 @@
          [ $drv = "Motif" ] && drv="X11"
          ln="$ln.a $dir/libgraf$drv"
       fi
-         CERNLIB="$CERNLIB $dir/lib$ln.a"
+      [ -n "$ln" ] && CERNLIB="$CERNLIB $dir/lib$ln.a"
   done
-  [ $_p -eq 0 ] && CERNLIB="$CERNLIB $CERN/$gver/lib/libpacklib.a"
-
+  if [ $_p -eq 0 ]; then 
+       CERNLIB="$CERNLIB $CERN/$gver/lib/libpacklib-lesstif.a $CERN/$gver/lib/libpacklib.a $CERN/$gver/lib/libkernlib.a"
+       [ -z "$Gsys" ] && Gsys="Motif"
+  fi
 #  get system name
   [ -d /NextAdmin ] && Msys="NeXT" || Msys=`uname -s`
   case $Msys in
@@ -81,7 +109,6 @@
                 ;;
           *)    ;;
   esac
-
  
   if [ -n "$Gsys" ] ; then
      case $Msys in
@@ -110,10 +137,14 @@
                SYSGGL="-lfgl -lgl_s -lm -lbsd" ;
                SYSGMOTIF="-lXm -lXt -lX11 -lPW"
 	       ;;
-      Linux)   [ -d /usr/X386/lib ] && SYSGX11="-L/usr/X386/lib -lX11"
+      Linux)   SYSGX11="-lX11"
+	       SYSGMOTIF="-lXm -lXt -lXp -lXext -lX11"
+	       [ -d /usr/X386/lib ] && SYSGX11="-L/usr/X386/lib -lX11"
 	       [ -d /usr/X11/lib ] && SYSGX11="-L/usr/X11/lib -lX11"
 	       [ -d /usr/X11R6/lib ] && SYSGX11="-L/usr/X11R6/lib -lX11"
-	       [ -d /usr/X11R6/lib ] && SYSGMOTIF="-L/usr/X11R6/lib -lXm -lXt -lXp -lXext -lX11"
+	       [ -d /usr/X11R6/lib64 ] && SYSGX11="-L/usr/X11R6/lib64 -lX11"
+	       [ -d /usr/X11R6/lib ] && SYSGMOTIF="-L/usr/X11R6/lib $SYSGMOTIF"
+	       [ -d /usr/X11R6/lib64 ] && SYSGMOTIF="-L/usr/X11R6/lib64 $SYSGMOTIF"
 	       [ `uname -m` = ppc ] && SYSGMOTIF="$SYSGMOTIF -lSM -lICE -lXpm"
 	       ;;
       Darwin)  [ -d /usr/X11R6/lib ] && SYSGX11="-L/usr/X11R6/lib -lX11"
@@ -150,7 +181,11 @@
                SYSGMOTIF="-L/usr/lib/X11 -lXm -lXt -lX11 -lm" ;;
      esac
  
+  if [ $_u -eq 0 ] ; then
+     [ $dynxbae = 1 ] && CERNLIB="$CERNLIB -lXbae -lXm -lXaw"
+  fi
             [ -z "$SYSGX11" ]   && SYSGX11="-lX11"
+
      case $Gsys in
        X11) CERNLIB="$CERNLIB $SYSGX11" ;;
      Motif) [ -z "$SYSGMOTIF" ] && SYSGMOTIF="-lXm -lXt $SYSGX11" ;
@@ -212,6 +247,9 @@
      if [ "$Msys" = "Linux" ] ; then
         CERNLIB="$CERNLIB -lnsl -lcrypt -ldl"
      fi
+     if [ $dynlapack = 1 ] ; then
+         CERNLIB="$CERNLIB -llapack -lblas"
+     fi
      if [ "$Msys" = "Darwin" ] ; then
 	 CERNLIB1="$CERNLIB -L/usr/local/lib/system -lcompat -ldl"
      fi

cernlib-segf_eudtest.patch:

--- NEW FILE cernlib-segf_eudtest.patch ---
--- cernlib-2006/2006/src/mclibs/Imakefile.segf_eudtest	2007-04-21 13:08:47.000000000 +0200
+++ cernlib-2006/2006/src/mclibs/Imakefile	2007-04-21 13:09:58.000000000 +0200
@@ -10,7 +10,8 @@
 
 SUBDIRS = $(LIBDIRS)
 
-TestSubdirs($(LIBDIRS))
+/* eurodec test program segfaults */
+TestSubdirs(cojets pdf photos herwig isajet)
 
 InstallLibSubdirs($(LIBDIRS))
 InstallSharedLibSubdirs($(LIBDIRS))

cernlib-soname.patch:

--- NEW FILE cernlib-soname.patch ---
--- cernlib-2006/2006/src/config/lnxLib.rules.soname	2007-04-20 14:45:54.000000000 +0200
+++ cernlib-2006/2006/src/config/lnxLib.rules	2007-04-20 14:45:54.000000000 +0200
@@ -60,11 +60,11 @@
 									@@\
 $(DESTDIR)dest/SharedLibraryTargetName(libname): SharedLibraryTargetName(libname) @@\
 	MakeDir($(DESTDIR)dest)						@@\
-	$(INSTALL) $(INSTALLFLAGS) $(INSTLIBFLAGS) 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/2006/src/config/biglib.rules.soname	2007-04-20 14:45:54.000000000 +0200
+++ cernlib-2006/2006/src/config/biglib.rules	2007-04-20 16:06:53.000000000 +0200
@@ -287,13 +287,17 @@
 #define SharedLibraryTargetName(name)Concat(lib,name.so.$(LIB_SONAME).$(CERN_LEVEL))
 #endif
 
+#ifndef SharedLibrarySonameName
+#define SharedLibrarySonameName(name)Concat(lib,name$(TOOL_SONAME).so.$(LIB_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=Concat(lib,libname.so.$(LIB_SONAME))\ @@\
+	@$(FCLINK) -shared -Wl,-soname=SharedLibrarySonameName(libname)\ @@\
 		-o $@ `cat version/objects.list` `cernlib -v "" -dy libname\ @@\
 		| sed s/Concat(-l,libname)//g`				@@\
 	@date

cernlib-test.patch:

--- NEW FILE cernlib-test.patch ---
--- cernlib-2006/2006/src/geant321/examples/gexam2/Imakefile.test	1997-04-10 17:33:20.000000000 +0200
+++ cernlib-2006/2006/src/geant321/examples/gexam2/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -13,7 +13,7 @@
 
 DefinePackageLibrary(NullParameter)
 
-CernlibFortranProgramTarget(exam2,$(OBJS),$(PACKAGE_LIB),$(PACKAGE_LIB),graflib packlib)
+CernlibFortranProgramTarget(exam2,$(OBJS),NullParameter,NullParameter,graflib packlib geant321)
 
 TestTarget(exam2,gexam2.dat,gexam2.input)
 
--- cernlib-2006/2006/src/geant321/examples/gexam1/Imakefile.test	1997-04-10 17:33:14.000000000 +0200
+++ cernlib-2006/2006/src/geant321/examples/gexam1/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -3,7 +3,7 @@
 
 DefinePackageLibrary(NullParameter)
 
-CernlibFortranProgramTarget(exam1,$(OBJS),$(PACKAGE_LIB),$(PACKAGE_LIB),graflib packlib)
+CernlibFortranProgramTarget(exam1,$(OBJS),NullParameter,NullParameter,graflib packlib geant321)
 
 TestTarget(exam1,gexam1.dat,gexam1.input)
 
--- cernlib-2006/2006/src/geant321/examples/gexam3/Imakefile.test	1997-04-10 17:33:34.000000000 +0200
+++ cernlib-2006/2006/src/geant321/examples/gexam3/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -3,7 +3,7 @@
 
 DefinePackageLibrary(NullParameter)
 
-CernlibFortranProgramTarget(exam3,$(OBJS),$(PACKAGE_LIB),$(PACKAGE_LIB),graflib packlib)
+CernlibFortranProgramTarget(exam3,$(OBJS),NullParameter,NullParameter,graflib packlib geant321)
 
 TestTarget(exam3,gexam3.dat,gexam3.input)
 
--- cernlib-2006/2006/src/geant321/examples/gexam5/Imakefile.test	1997-04-10 17:33:38.000000000 +0200
+++ cernlib-2006/2006/src/geant321/examples/gexam5/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -3,7 +3,7 @@
 
 DefinePackageLibrary(NullParameter)
 
-CernlibFortranProgramTarget(exam5,$(OBJS),$(PACKAGE_LIB),$(PACKAGE_LIB),graflib packlib)
+CernlibFortranProgramTarget(exam5,$(OBJS),NullParameter,NullParameter,graflib packlib geant321)
 
 TestTarget(exam5,gexam5.dat,gexam5.input)
 
--- cernlib-2006/2006/src/geant321/examples/Imakefile.test	1996-03-06 18:31:38.000000000 +0100
+++ cernlib-2006/2006/src/geant321/examples/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -1,7 +1,10 @@
 #define IHaveSubdirs
 #define PassCDebugFlags 'CDEBUGFLAGS=$(CDEBUGFLAGS)' /* for NamedMakeSubdirs */
 
+/* gexam4 needs fluka
 SUBDIRS= gexam1 gexam2 gexam3 gexam4 gexam5
+*/
+SUBDIRS= gexam1 gexam2 gexam3 gexam5
 
 TestSubdirs($(SUBDIRS))
 
--- cernlib-2006/2006/src/geant321/examples/gexam4/Imakefile.test	1997-04-10 17:33:37.000000000 +0200
+++ cernlib-2006/2006/src/geant321/examples/gexam4/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -14,7 +14,7 @@
 
 DefinePackageLibrary(NullParameter)
 
-CernlibFortranProgramTarget(exam4,$(OBJS),$(PACKAGE_LIB),$(PACKAGE_LIB),graflib packlib)
+CernlibFortranProgramTarget(exam4,$(OBJS),NullParameter,NullParameter,graflib packlib geant321)
 
 TestTarget(exam4,gexam4.dat,gexam4.input)
 
--- cernlib-2006/2006/src/packlib/hbook/tests/Imakefile.test	1996-02-20 16:46:41.000000000 +0100
+++ cernlib-2006/2006/src/packlib/hbook/tests/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -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)
--- cernlib-2006/2006/src/packlib/hbook/examples/Imakefile.test	1996-02-20 16:46:21.000000000 +0100
+++ cernlib-2006/2006/src/packlib/hbook/examples/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -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)
--- cernlib-2006/2006/src/packlib/kuip/examples/Imakefile.test	1996-10-02 17:37:00.000000000 +0200
+++ cernlib-2006/2006/src/packlib/kuip/examples/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -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)
 
--- cernlib-2006/2006/src/packlib/kapack/test/Imakefile.test	1996-12-02 16:29:51.000000000 +0100
+++ cernlib-2006/2006/src/packlib/kapack/test/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -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
--- cernlib-2006/2006/src/packlib/minuit/examples/Imakefile.test	1997-10-23 19:04:15.000000000 +0200
+++ cernlib-2006/2006/src/packlib/minuit/examples/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -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)
--- cernlib-2006/2006/src/packlib/epio/tests/ptest2/Imakefile.test	1996-03-08 16:21:45.000000000 +0100
+++ cernlib-2006/2006/src/packlib/epio/tests/ptest2/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -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)
 
--- cernlib-2006/2006/src/packlib/epio/tests/ptest3/Imakefile.test	1996-03-08 16:21:46.000000000 +0100
+++ cernlib-2006/2006/src/packlib/epio/tests/ptest3/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -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)
 
--- cernlib-2006/2006/src/packlib/epio/tests/ptest1/Imakefile.test	1996-03-08 16:21:45.000000000 +0100
+++ cernlib-2006/2006/src/packlib/epio/tests/ptest1/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -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)
 
--- cernlib-2006/2006/src/packlib/zbook/test/Imakefile.test	1996-03-12 09:13:30.000000000 +0100
+++ cernlib-2006/2006/src/packlib/zbook/test/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -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)
--- cernlib-2006/2006/src/packlib/ffread/test/Imakefile.test	1996-10-02 17:36:27.000000000 +0200
+++ cernlib-2006/2006/src/packlib/ffread/test/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -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)
 
--- cernlib-2006/2006/src/packlib/zebra/test/Imakefile.test	1997-08-29 15:33:57.000000000 +0200
+++ cernlib-2006/2006/src/packlib/zebra/test/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -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(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(zebjz1,zebjz1.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib)
-
-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(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,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,libzebtlib.a,libzebtlib.a,kernlib packlib)
+
+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/2006/src/phtools/wicoexam/Imakefile.test	1996-03-22 17:42:50.000000000 +0100
+++ cernlib-2006/2006/src/phtools/wicoexam/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -1,5 +1,5 @@
 DefinePackageLibrary(NullParameter)
 
-CernlibFortranProgramTarget(wicot,wicoex.o,$(PACKAGE_LIB),$(PACKAGE_LIB),NullParameter)
+CernlibFortranProgramTarget(wicot,wicoex.o,NullParameter,NullParameter,packlib phtools)
 
 TestTarget(wicot,NullParameter,NullParameter)
--- cernlib-2006/2006/src/mathlib/bvsl/test/Imakefile.test	1996-03-21 18:19:55.000000000 +0100
+++ cernlib-2006/2006/src/mathlib/bvsl/test/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -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)
 
--- cernlib-2006/2006/src/mathlib/gen/tests/Imakefile.test	2005-03-24 17:40:10.000000000 +0100
+++ cernlib-2006/2006/src/mathlib/gen/tests/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -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)
--- cernlib-2006/2006/src/mclibs/eurodec/eudtest/Imakefile.test	1997-03-14 18:32:14.000000000 +0100
+++ cernlib-2006/2006/src/mclibs/eurodec/eudtest/Imakefile	2007-04-21 11:15:36.000000000 +0200
@@ -4,11 +4,10 @@
 
 FORTRANSAVEOPTION = FortranSaveFlags
 
-CernlibFortranProgramTarget(eudtest,$(OBJS),$(PACKAGE_LIB),$(PACKAGE_LIB),packlib)
+CernlibFortranProgramTarget(eudtest,$(OBJS),NullParameter,NullParameter,packlib eurodec)
 
 TestTarget(eudtest,eurodec.dat,eutitle.dat)
 
 CopyFile(eutitle.data,eutitle.dat)
 
 LinkFileFromDir($(TOP)$(PACKAGETOP),eurodec.dat)
-
--- cernlib-2006/2006/src/mclibs/herwig/test/Imakefile.test	1997-01-06 18:06:42.000000000 +0100
+++ cernlib-2006/2006/src/mclibs/herwig/test/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -4,6 +4,6 @@
 DefinePackageLibrary(NullParameter)
 
 
-CernlibFortranProgramTarget(herwigt,test.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib)
+CernlibFortranProgramTarget(herwigt,test.o,NullParameter,NullParameter,kernlib herwig)
 
 TestTarget(herwigt,NullParameter,NullParameter)
--- cernlib-2006/2006/src/mclibs/cojets/test/Imakefile.test	1996-03-27 10:32:16.000000000 +0100
+++ cernlib-2006/2006/src/mclibs/cojets/test/Imakefile	2007-04-21 09:30:47.000000000 +0200
@@ -3,7 +3,7 @@
 
 DefinePackageLibrary(NullParameter)
 
-CernlibFortranProgramTarget(cojetst,test.o,$(PACKAGE_LIB),$(PACKAGE_LIB),mathlib kernlib)
+CernlibFortranProgramTarget(cojetst,test.o,NullParameter,NullParameter,mathlib kernlib cojets)
 
 CopyFile(test.input,test.in)
 
--- cernlib-2006/2006/src/mclibs/photos/test/Imakefile.test	1999-03-26 11:53:26.000000000 +0100
+++ cernlib-2006/2006/src/mclibs/photos/test/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -2,6 +2,6 @@
 
 DefinePackageLibrary(NullParameter)
 
-CernlibFortranProgramTarget(photost,phodem.o pseudo_jetset.o,$(PACKAGE_LIB),$(PACKAGE_LIB),kernlib)
+CernlibFortranProgramTarget(photost,phodem.o pseudo_jetset.o,NullParameter,NullParameter,kernlib photos)
 
 TestTarget(photost,NullParameter,NullParameter)
--- cernlib-2006/2006/src/mclibs/isajet/test/Imakefile.test	2007-04-21 09:29:29.000000000 +0200
+++ cernlib-2006/2006/src/mclibs/isajet/test/Imakefile	2007-04-21 09:30:54.000000000 +0200
@@ -6,9 +6,12 @@
 
 LinkFileFromDir($(TOP)$(PACKAGETOP),isajet.dat)
 
-CernlibFortranProgramTarget(isajett,isajett.o,$(PACKAGE_LIB),$(PACKAGE_LIB),pdflib804 mathlib kernlib)
+CernlibFortranProgramTarget(isajett,isajett.o,NullParameter,NullParameter,pdflib804 mathlib kernlib isajet)
 
 #if !defined(CERNLIB_GFORTRAN)
 /* breaks on 'STOP 99' if compiled with gfortran */
 TestTarget(isajett,isajet.dat,test.input)
 #endif
+#if defined(CERNLIB_GFORTRAN)
+test::
+#endif
--- cernlib-2006/2006/src/mclibs/pdf/tpdf/Imakefile.test	2000-04-19 15:52:13.000000000 +0200
+++ cernlib-2006/2006/src/mclibs/pdf/tpdf/Imakefile	2007-04-21 09:29:30.000000000 +0200
@@ -13,13 +13,13 @@
 DefinePackageLibrary(NullParameter)
 
 
-CernlibFortranProgramTarget(testpdf,testpdf.o,$(PACKAGE_LIB),$(PACKAGE_LIB),mathlib)
+CernlibFortranProgramTarget(testpdf,testpdf.o,NullParameter,NullParameter,mathlib pdflib)
 
-CernlibFortranProgramTarget(testpdg,testpdg.o,$(PACKAGE_LIB),$(PACKAGE_LIB),mathlib)
+CernlibFortranProgramTarget(testpdg,testpdg.o,NullParameter,NullParameter,mathlib pdflib)
 
-CernlibFortranProgramTarget(testgam,testgam.o,$(PACKAGE_LIB),$(PACKAGE_LIB),mathlib)
+CernlibFortranProgramTarget(testgam,testgam.o,NullParameter,NullParameter,mathlib pdflib)
 
-CernlibFortranProgramTarget(test_npdf,test_npdf.o,$(PACKAGE_LIB),$(PACKAGE_LIB),mathlib)
+CernlibFortranProgramTarget(test_npdf,test_npdf.o,NullParameter,NullParameter,mathlib pdflib)
 
 TestTarget(testpdf,NullParameter,NullParameter)
 TestTarget(testpdg,NullParameter,NullParameter)


--- NEW FILE geant321-109-fix-broken-xsneut95.dat-link.dpatch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 109-fix-broken-xsneut95.dat-link.dpatch by  <kmccarty at debian.org>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Link to xsneut95.dat in the correct place.

@DPATCH@
diff -urNad cernlib-2005.05.09.dfsg~/src/geant321/Imakefile cernlib-2005.05.09.dfsg/src/geant321/Imakefile
--- cernlib-2005.05.09.dfsg~/src/geant321/Imakefile	2005-11-23 15:38:52.663383751 +0000
+++ cernlib-2005.05.09.dfsg/src/geant321/Imakefile	2005-11-23 15:39:00.618680825 +0000
@@ -41,7 +41,7 @@
 install.lib:: $(CERN_LIBDIR)/xsneut95.dat
 
 $(CERN_LIBDIR)/xsneut95.dat:
-	cd $(@D);$(LN) ../share/lib/$(@F) $(@F)
+	cd $(@D) && $(LN) ../src/geant321/data/$(@F) $(@F)
 
 #endif
 #if defined(CERNLIB_VAXVMS)


--- NEW FILE mclibs-321-support-gfortran.dpatch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 321-support-gfortran.dpatch by  <kmccarty at debian.org>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Minor changes to support use of gfortran.  From Harald Vogt.

@DPATCH@
diff -urNad mclibs-2005.dfsg~/src/mclibs/herwig/code/hwhew2.F mclibs-2005.dfsg/src/mclibs/herwig/code/hwhew2.F
--- mclibs-2005.dfsg~/src/mclibs/herwig/code/hwhew2.F	1996-12-03 09:16:55.000000000 -0500
+++ mclibs-2005.dfsg/src/mclibs/herwig/code/hwhew2.F	2006-09-27 13:47:59.876963852 -0400
@@ -75,8 +75,7 @@
       H(J,I)=(ZDMP*ZP-ZDPM*ZQ)*ZT
       CH(J,I)=(ZDMP*ZPS-ZDPM*ZQS)*ZT
       ZD=H(J,I)*CH(J,I)
-      PT5=CMPLX(.5,0.)
-      D(J,I)=PT5*ZD
+      D(J,I)=CMPLX(.5,0.)*ZD
    11 CONTINUE
       DO 60 I=1,NPART-1
       IPP1=I+1
diff -urNad mclibs-2005.dfsg~/src/mclibs/isajet/test/Imakefile mclibs-2005.dfsg/src/mclibs/isajet/test/Imakefile
--- mclibs-2005.dfsg~/src/mclibs/isajet/test/Imakefile	2000-07-25 12:21:34.000000000 -0400
+++ mclibs-2005.dfsg/src/mclibs/isajet/test/Imakefile	2006-09-27 13:49:49.783806148 -0400
@@ -8,4 +8,7 @@
 
 CernlibFortranProgramTarget(isajett,isajett.o,$(PACKAGE_LIB),$(PACKAGE_LIB),pdflib804 mathlib kernlib)
 
+#if !defined(CERNLIB_GFORTRAN)
+/* breaks on 'STOP 99' if compiled with gfortran */
 TestTarget(isajett,isajet.dat,test.input)
+#endif

npatchy-curdir.patch:

--- NEW FILE npatchy-curdir.patch ---
--- cernlib-2006/2006/src/patchy/yexpand.script.curdir	2005-04-18 17:41:03.000000000 +0200
+++ cernlib-2006/2006/src/patchy/yexpand.script	2007-04-20 23:31:00.000000000 +0200
@@ -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 <<EOI" >>$tfile
   cat <$ifile        >>$tfile
   cc=$?

npatchy-np_flags.patch:

--- NEW FILE npatchy-np_flags.patch ---
--- cernlib-2006/2006/src/patchy/fcasplit.F.np_flags	1999-11-30 18:37:25.000000000 +0100
+++ cernlib-2006/2006/src/patchy/fcasplit.F	2007-04-20 23:39:34.000000000 +0200
@@ -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/2006/src/patchy/Imakefile.np_flags	2006-09-06 16:36:54.000000000 +0200
+++ cernlib-2006/2006/src/patchy/Imakefile	2007-04-20 23:39:34.000000000 +0200
@@ -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 $@); \ @@\

patchy-use_OPT.patch:

--- NEW FILE patchy-use_OPT.patch ---
--- cernlib-2006/patchy/fcasplit.f.use_OPT	2006-04-12 19:30:57.000000000 +0200
+++ cernlib-2006/patchy/fcasplit.f	2007-04-20 23:30:53.000000000 +0200
@@ -23,7 +23,7 @@
       PARAMETER   (CHIDA = ';DECK  I' )
       PARAMETER   (CHOVER= 'UNKNOWN')
  
-      PARAMETER   (CHPOF = '-c -O2 -Nx800 -Nc200')
+      PARAMETER   (CHPOF = '-c -O2')
       PARAMETER   (CHPOC = '-c -O2 -posix')
       PARAMETER   (CHPOA = ' ')
  
@@ -37,7 +37,7 @@
       PARAMETER   (CHWHA = 'as  ')
  
       PARAMETER   (MLMKLN=100)
-      PARAMETER   (MXLENG=128, MXMKLN=64)
+      PARAMETER   (MXLENG=256, MXMKLN=128)
       CHARACTER    CHHOLD*(MXLENG)
       CHARACTER    CHOPT(7)*(MXLENG)
       DIMENSION    NCHOPT(7)
--- cernlib-2006/patchy/p4boot.sh.use_OPT	2006-04-12 19:30:57.000000000 +0200
+++ cernlib-2006/patchy/p4boot.sh	2007-04-20 23:30:53.000000000 +0200
@@ -5,6 +5,8 @@
  set  TARG =   /usr/local/bin      # target directory
  set  FOPT  = "-O2"                # Fortran compiler options
  set  FOPTC = "-c $FOPT -posix"
+ set  COPT  = "-O2"                # C compiler options
+ set  COPTC =  "-c $COPT -posix"
  
 # *******************************************************************
 # *                                                                 *
@@ -151,7 +153,7 @@
  mkdir p4sub
  cd p4sub                    # operate in the sub-directory p4sub
  
- fcasplit  ../p4comp.fca  "$FOPTC"
+ fcasplit  ../p4comp.fca  "$FOPTC" "$COPTC"
  
  csh  -v p4comp.shfca
  
@@ -177,17 +179,17 @@
  echo ' -----------   ---->  Make the new Patchy executable files'
  set  CLD  = "f77"
  
- $CLD   -o ypatchy  ypatch.o   libp4lib.a
- $CLD   -o ytobcd   ytobcd.o   libp4lib.a
- $CLD   -o ytobin   ytobin.o   libp4lib.a
- $CLD   -o ytoceta  ytocet.o   libp4lib.a
- $CLD   -o yfrceta  yfrcet.o   libp4lib.a
- $CLD   -o ycompar  ycompa.o   libp4lib.a
- $CLD   -o yedit    yedit.o    libp4lib.a
- $CLD   -o yindexb  yindex.o   libp4lib.a
- $CLD   -o ylistb   ylist.o    libp4lib.a
- $CLD   -o ysearch  ysearc.o   libp4lib.a
- $CLD   -o yshift   yshift.o   libp4lib.a
+ $CLD $FOPT  -o ypatchy  ypatch.o   libp4lib.a
+ $CLD $FOPT  -o ytobcd   ytobcd.o   libp4lib.a
+ $CLD $FOPT  -o ytobin   ytobin.o   libp4lib.a
+ $CLD $FOPT  -o ytoceta  ytocet.o   libp4lib.a
+ $CLD $FOPT  -o yfrceta  yfrcet.o   libp4lib.a
+ $CLD $FOPT  -o ycompar  ycompa.o   libp4lib.a
+ $CLD $FOPT  -o yedit    yedit.o    libp4lib.a
+ $CLD $FOPT  -o yindexb  yindex.o   libp4lib.a
+ $CLD $FOPT  -o ylistb   ylist.o    libp4lib.a
+ $CLD $FOPT  -o ysearch  ysearc.o   libp4lib.a
+ $CLD $FOPT  -o yshift   yshift.o   libp4lib.a
  
  chmod a+x  ypatchy
  chmod a+x  ytobcd


--- NEW FILE paw-120-fix-mlp-cdf-file.dpatch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 120-fix-mlp-cdf-file.dpatch by  <kmccarty at debian.org>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: add missing >Guidance keyword in CDF file before help text.

@DPATCH@
diff -urNad paw-2.14.04.dfsg~/src/pawlib/paw/cdf/mlpdef.cdf paw-2.14.04.dfsg/src/pawlib/paw/cdf/mlpdef.cdf
--- paw-2.14.04.dfsg~/src/pawlib/paw/cdf/mlpdef.cdf	2001-05-21 05:12:35.000000000 -0400
+++ paw-2.14.04.dfsg/src/pawlib/paw/cdf/mlpdef.cdf	2007-01-17 14:26:43.199756845 -0500
@@ -260,6 +260,7 @@
 >Action mlppawc%c
 
 >Menu ../TPAT
+>Guidance
 Operations on the test patterns
 .
 Whereas it is obviously necessary to define learning


--- NEW FILE paw-121-call-gfortran-in-cscrexec.dpatch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 121-call-gfortran-in-cscrexec.dpatch by  <kmccarty at debian.org>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Build temporary shared libs with gfortran when it is the default
## DP: Fortran compiler on Linux and OS X.

@DPATCH@
diff -urNad paw-2.14.04.dfsg~/src/pawlib/comis/code/cscrexec.F paw-2.14.04.dfsg/src/pawlib/comis/code/cscrexec.F
--- paw-2.14.04.dfsg~/src/pawlib/comis/code/cscrexec.F	2007-03-06 15:05:30.173089849 -0500
+++ paw-2.14.04.dfsg/src/pawlib/comis/code/cscrexec.F	2007-03-06 15:08:05.919014086 -0500
@@ -179,14 +179,25 @@
       ENDIF
 #endif
 #if defined(CERNLIB_LINUX) && !defined(CERNLIB_MACOSX)
-      CHLINE=                   'ld -shared -o '
+#if defined (CERNLIB_GFORTRAN)
+      CHLINE=                   'gfortran -shared -o '
      +                    // NAME(:LN) //'.sl '// NAME(:LN) //'.o'
+#else
+      CHLINE=                   'g77 -shared -o '
+     +                    // NAME(:LN) //'.sl '// NAME(:LN) //'.o'
+#endif
 #endif
 #if defined(CERNLIB_MACOSX)
+#if defined (CERNLIB_GFORTRAN)
+      CHLINE= 'gfortran -bundle -bundle_loader `/usr/bin/which pawX11`'
+     +                    // ' -bind_at_load -o '
+     +                    // NAME(:LN) //'.sl '// NAME(:LN) //'.o'
+#else
       CHLINE= 'g77 -bundle -bundle_loader `/usr/bin/which pawX11` '
      +                    // ' -bind_at_load -o '
      +                    // NAME(:LN) //'.sl '// NAME(:LN) //'.o'
 #endif
+#endif
 #if defined(CERNLIB_ALPHA_OSF)
         CHLINE=                   'ld -shared -o '
      +                    // NAME(:LN) //'.sl '// NAME(:LN) //'.o \\'


--- NEW FILE paw-211-support-amd64-and-itanium.dpatch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 211-support-amd64-and-itanium.dpatch by  <kmccarty at debian.org>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Large patch from Harald Vogt <hvogt at ifh.de> to make PAW and Paw++ work
## 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.  Last revision 2006-07-20.

@DPATCH@
diff -urNad paw-2.14.04~/src/pawlib/comis/code/Imakefile paw-2.14.04/src/pawlib/comis/code/Imakefile
--- paw-2.14.04~/src/pawlib/comis/code/Imakefile	2006-09-08 14:44:11.387353882 -0400
+++ paw-2.14.04/src/pawlib/comis/code/Imakefile	2006-09-08 14:44:11.806264586 -0400
@@ -50,6 +50,10 @@
 SRCS_F := $(SRCS_F) cscrexec.F
 #endif
 
+#if defined(CERNLIB_QMLXIA64)
+SRCS_F := $(SRCS_F) csrtgpl.F csitgpl.F
+#endif
+
 #if defined(CERNLIB_OLD)
 SRCS_F := $(SRCS_F) cspdir.F csrmbk.F
 #endif
diff -urNad paw-2.14.04~/src/pawlib/comis/code/csaddr.F paw-2.14.04/src/pawlib/comis/code/csaddr.F
--- paw-2.14.04~/src/pawlib/comis/code/csaddr.F	1996-02-26 12:16:25.000000000 -0500
+++ paw-2.14.04/src/pawlib/comis/code/csaddr.F	2006-09-08 14:44:11.806264586 -0400
@@ -17,8 +17,15 @@
       INTEGER CSLTGP,CSITGP
       CHARACTER*32 NAME
 #include "comis/cstab.inc"
-#if defined(CERNLIB_SHL)
+#if defined(CERNLIB_SHL)&&(!defined(CERNLIB_QMLXIA64))
       INTEGER CS_GET_FUNC
+#endif
+#if defined(CERNLIB_SHL)&&(defined(CERNLIB_QMLXIA64))
+#include "comis/cstab64.inc"
+      INTEGER CSITGPL
+      INTEGER*8 CS_GET_FUNC
+#endif
+#if defined(CERNLIB_SHL)
       NAME=CHNAME
       NC=LENOCC(NAME)
       CALL CSCHID(NAME(:NC))
@@ -26,21 +33,39 @@
       I=CSLTGP(IPVS)
       IF(I.GT.0)THEN
         IF(IFCS.EQ.0)THEN
+#if defined (CERNLIB_QMLXIA64)
+          IADGPL=CS_GET_FUNC(NAME(1:NC)//'_')
+          IF(IADGPL.NE.0)THEN
+            IFCS=-2
+            CALL CSRTGPL(I)
+#else
           IADGP=CS_GET_FUNC(NAME(1:NC)//'_')
           IF(IADGP.NE.0)THEN
             IFCS=-2
             CALL CSRTGP(I)
+#endif
+#endif
+#if defined(CERNLIB_SHL)
           ELSE
             I=0
           ENDIF
         ENDIF
       ELSE
+#if defined (CERNLIB_QMLXIA64)
+          IADGPL=CS_GET_FUNC(NAME(1:NC)//'_')
+        IF(IADGPL.NE.0)THEN
+          IFCS=-2
+          ITYPGP=-2
+          I=CSITGPL(IPVS)
+        ENDIF
+#else
         IADGP=CS_GET_FUNC(NAME(1:NC)//'_')
         IF(IADGP.NE.0)THEN
           IFCS=-2
           ITYPGP=-2
           I=CSITGP(IPVS)
         ENDIF
+#endif
       END IF
       CSADDR=I
 #endif
diff -urNad paw-2.14.04~/src/pawlib/comis/code/csinit.F paw-2.14.04/src/pawlib/comis/code/csinit.F
--- paw-2.14.04~/src/pawlib/comis/code/csinit.F	2005-04-18 11:41:04.000000000 -0400
+++ paw-2.14.04/src/pawlib/comis/code/csinit.F	2006-09-08 14:44:11.807264373 -0400
@@ -64,6 +64,9 @@
 #if defined(CERNLIB_SHL)
 #include "comis/cshlnm.inc"
 #endif
+#if defined(CERNLIB_SHL)&&(defined(CERNLIB_QMLXIA64))
+#include "comis/cstab64.inc"
+#endif
 #if defined(CERNLIB_PAW)
 #include "paw/pcmode.inc"
 #include "comis/cshfill.inc"
@@ -159,6 +162,9 @@
       ICHMINU=ICHAR('-')
       ICHPLUS=ICHAR('+')
       ICHCOMM=ICHAR(',')
+#if defined(CERNLIB_SHL)&&(defined(CERNLIB_QMLXIA64))
+      IPIADGV=0
+#endif
 #if defined(CERNLIB_PAW)
       CALL CSPAWI
       MODHFI=0
@@ -211,8 +217,8 @@
 #endif
 #if (defined(CERNLIB_LINUX))
       ITMPLEN=CSTMPD(CHPATH, 256)
-      CHF77 ='g77 -c'
-      CHCC  ='cc -c'
+      CHF77 ='g77 -g -c -fPIC'
+      CHCC  ='cc -g -c -fPIC'
 #endif
 #if (defined(CERNLIB_SGI))&&(defined(CERNLIB_SHL))
       ITMPLEN=CSTMPD(CHPATH, 256)
diff -urNad paw-2.14.04~/src/pawlib/comis/code/csintx.F paw-2.14.04/src/pawlib/comis/code/csintx.F
--- paw-2.14.04~/src/pawlib/comis/code/csintx.F	1996-12-05 04:50:37.000000000 -0500
+++ paw-2.14.04/src/pawlib/comis/code/csintx.F	2006-09-08 14:44:11.807264373 -0400
@@ -38,6 +38,9 @@
 #if defined(CERNLIB_PAW)
 #include "comis/cskucs.inc"
 #endif
+#if defined(CERNLIB_QMLXIA64)
+#include "comis/cstab64.inc"
+#endif
 #if (defined(CERNLIB_UNIX))&&(!defined(CERNLIB_ALPHA_OSF))
       INTEGER CSTRCMP
 #endif
@@ -1105,6 +1108,23 @@
       ENDIF
 #endif
 #if (!defined(CERNLIB_VAX))&&(!defined(CERNLIB_APOLLO))
+#if defined(CERNLIB_QMLXIA64)
+      IF(IQ(IP+KSIFCS).EQ.-2)THEN
+*Dynamic linker may give long addresses
+        IADGPL = IADGPLV(IADGP)
+      ELSE
+        IADGPL = IADGP
+      ENDIF
+      IF(ITP.EQ.1.OR.ITP.EQ.4.OR.ITP.EQ.6)THEN
+        ICSRES=CSCALI(IADGPL,NPAR,IDA(IOFSPL))
+      ELSEIF(ITP.EQ.2)THEN
+        RCSRES=CSCALR(IADGPL,NPAR,IDA(IOFSPL))
+      ELSEIF(ITP.EQ.5)THEN
+        DCSRES=CSCALD(IADGPL,NPAR,IDA(IOFSPL))
+      ELSEIF(ITP.EQ.7)THEN
+        DCSRES=CSCALD(IADGPL,NPAR,IDA(IOFSPL))
+      ENDIF
+#else
       IF(ITP.EQ.1.OR.ITP.EQ.4.OR.ITP.EQ.6)THEN
         ICSRES=CSCALI(IADGP,NPAR,IDA(IOFSPL))
       ELSEIF(ITP.EQ.2)THEN
@@ -1115,6 +1135,7 @@
         DCSRES=CSCALD(IADGP,NPAR,IDA(IOFSPL))
       ENDIF
 #endif
+#endif
       IPC=IPC+4
       GO TO 999
 *NUM I
diff -urNad paw-2.14.04~/src/pawlib/comis/code/csitgpl.F paw-2.14.04/src/pawlib/comis/code/csitgpl.F
--- paw-2.14.04~/src/pawlib/comis/code/csitgpl.F	1969-12-31 19:00:00.000000000 -0500
+++ paw-2.14.04/src/pawlib/comis/code/csitgpl.F	2006-09-08 14:44:11.808264160 -0400
@@ -0,0 +1,32 @@
+* Comis
+*
+*
+#if (defined(CERNLIB_QMLXIA64))
+#include "comis/pilot.h"
+*CMZU:  1.16/16 04/10/93  12.14.52  by  Vladimir Berezhnoi
+*-- Author : V.Berezhnoi
+* special for 64 bit addresses for dynamic linking (H. Vogt)
+      INTEGER FUNCTION CSITGPL(IP)
+***------------------------------
+*   it is last routine from the tables-set.
+***-----------------------------
+#include "comis/cspar.inc"
+#include "comis/mdpool.inc"
+#include "comis/cspnts.inc"
+#include "comis/cstabps.inc"
+#include "comis/cstab64.inc"
+      I=MHLOC(KSIDP+NWIDEN)
+      IQ(I)=0
+      IQ(I+1)=NCIDEN
+      DO 1 K=1,NWIDEN
+        IQ(I+KSIDP-1+K)=IDEN(K)
+   1  CONTINUE
+      CALL CSRTGPL(I)
+      IF(IP.EQ.0)THEN
+        IPGP=I
+      ELSE
+        IQ(IP)=I
+      ENDIF
+      CSITGPL=I
+      END
+#endif
diff -urNad paw-2.14.04~/src/pawlib/comis/code/cskcal.F paw-2.14.04/src/pawlib/comis/code/cskcal.F
--- paw-2.14.04~/src/pawlib/comis/code/cskcal.F	1996-12-05 04:50:39.000000000 -0500
+++ paw-2.14.04/src/pawlib/comis/code/cskcal.F	2006-09-08 14:44:11.808264160 -0400
@@ -31,6 +31,9 @@
 #include "comis/cstab.inc"
 #include "comis/csfres.inc"
 #include "comis/cssysd.inc"
+#if defined(CERNLIB_QMLXIA64)
+#include "comis/cstab64.inc"
+#endif
       CHARACTER PRONAME*32
       INTEGER CSCALI
       DOUBLE PRECISION CSCALD
@@ -232,6 +235,24 @@
         I2=I2+KS
         I=I+1
  9203 CONTINUE
+#if defined(CERNLIB_QMLXIA64)
+*  Dynamic linker may give long addresses
+      IF (IFCS.EQ.-2)THEN
+        IADGPL = IADGPLV(IADGP)
+      ELSE
+        IADGPL = IADGP
+      ENDIF
+      IF(ITP.EQ.1.OR.ITP.EQ.4.OR.ITP.EQ.6)THEN
+        ICSRES=CSCALI(IADGPL,NOPAR,IF77PL(1))
+      ELSEIF(ITP.EQ.2)THEN
+        RCSRES=CSCALR(IADGPL,NOPAR,IF77PL(1))
+      ELSEIF(ITP.EQ.5)THEN
+        DCSRES=CSCALD(IADGPL,NOPAR,IF77PL(1))
+      ELSEIF(ITP.EQ.7)THEN
+*  I think it will works correctly
+        DCSRES=CSCALD(IADGPL,NOPAR,IF77PL(1))
+      ENDIF
+#else
 *      IT=IABS(ITYPGP)
       IF(ITP.EQ.1.OR.ITP.EQ.4.OR.ITP.EQ.6)THEN
         ICSRES=CSCALI(IADGP,NOPAR,IF77PL(1))
@@ -245,6 +266,7 @@
       ENDIF
 *+SELF,IF=UNIX,IF=-SGI,IF=-IBMRT,IF=-DECS,IF=-HPUX,IF=-SUN,IF=-MSDOS.
 #endif
+#endif
 #if (defined(CERNLIB_UNIX))&&(!defined(CERNLIB_STDUNIX))
       I=1
       DO 9203 K=ITA-NPAR+1,ITA
diff -urNad paw-2.14.04~/src/pawlib/comis/code/cslink.F paw-2.14.04/src/pawlib/comis/code/cslink.F
--- paw-2.14.04~/src/pawlib/comis/code/cslink.F	1996-02-26 12:16:17.000000000 -0500
+++ paw-2.14.04/src/pawlib/comis/code/cslink.F	2006-09-08 14:44:11.808264160 -0400
@@ -21,10 +21,15 @@
 #include "comis/cstab.inc"
 #include "comis/cspnts.inc"
 #include "comis/cslun.inc"
-#if defined(CERNLIB_SHL)
+#if defined(CERNLIB_SHL)&&(!defined(CERNLIB_QMLXIA64))
       CHARACTER*(KLENID) FNNAME
       INTEGER CS_GET_FUNC
 #endif
+#if defined(CERNLIB_SHL)&&(defined(CERNLIB_QMLXIA64))
+#include "comis/cstab64.inc"
+      CHARACTER*(KLENID) FNNAME
+      INTEGER*8 CS_GET_FUNC
+#endif
          COMMON/CSGSCM/IGS,JGS,NGS,CSJUNK(3)
       IF(ISTLIB.EQ.0 .AND. ITBS.EQ.0)RETURN
    2  I=IPGP
@@ -60,12 +65,20 @@
 #if defined(CERNLIB_SHL)
           CALL CSGTIDP(I,FNNAME,NC)
           CALL CUTOL(FNNAME(1:NC))
+#if defined (CERNLIB_QMLXIA64)
+          IADGPL=CS_GET_FUNC(FNNAME(1:NC)//'_')
+          IF(IADGPL.NE.0)THEN
+            IFCS=-2
+            CALL CSRTGPL(I)
+          ENDIF
+#else
           IADGP=CS_GET_FUNC(FNNAME(1:NC)//'_')
           IF(IADGP.NE.0)THEN
             IFCS=-2
             CALL CSRTGP(I)
           ENDIF
 #endif
+#endif
           IP=0
         ENDIF
       ENDIF
diff -urNad paw-2.14.04~/src/pawlib/comis/code/cspawi.F paw-2.14.04/src/pawlib/comis/code/cspawi.F
--- paw-2.14.04~/src/pawlib/comis/code/cspawi.F	1996-02-26 12:16:22.000000000 -0500
+++ paw-2.14.04/src/pawlib/comis/code/cspawi.F	2006-09-08 14:44:11.808264160 -0400
@@ -23,10 +23,12 @@
       COMMON/PAWC/NWPAW,IXPAWC,IHDIV,IXHIGZ,IXKU,FENC(5),LMAIN,HCV(9989)
       DIMENSION IQ(2),Q(2),LQ(8000)
       EQUIVALENCE (LQ(1),LMAIN),(IQ(1),LQ(9)),(Q(1),IQ(1))
+      CHARACTER*8 MYCSPAWC
+      MYCSPAWC = 'CSPAWC  '
 ****      JKUVBS=LOCF(IQ(1))-1
       JKUVBS=LOCF(IQ(1))+KUVOFS-1
       KUVCUR=0
-      CALL CCOPYS(MJSCHA('CSPAWC  '),JID,8)
+      CALL CCOPYS(MJSCHA(MYCSPAWC),JID,8)
       NCIDEN=6
       NWIDEN=2
       I=CSLTGB(IPVS)
diff -urNad paw-2.14.04~/src/pawlib/comis/code/csrtgpl.F paw-2.14.04/src/pawlib/comis/code/csrtgpl.F
--- paw-2.14.04~/src/pawlib/comis/code/csrtgpl.F	1969-12-31 19:00:00.000000000 -0500
+++ paw-2.14.04/src/pawlib/comis/code/csrtgpl.F	2006-09-08 14:44:11.808264160 -0400
@@ -0,0 +1,31 @@
+* Comis
+*
+*
+#if (defined(CERNLIB_QMLXIA64))
+#include "comis/pilot.h"
+*CMZ :  1.18/14 10/01/95  15.41.06  by  Vladimir Berezhnoi
+*-- Author : V.Berezhnoi
+* special for 64 bit addresses for dynamic linking (H. Vogt)
+
+      SUBROUTINE CSRTGPL(I)
+***--------------------------
+#include "comis/cspar.inc"
+#include "comis/mdpool.inc"
+#include "comis/cstabps.inc"
+#include "comis/cstab.inc"
+#include "comis/cstab64.inc"
+
+      IPIADGV = IPIADGV + 1
+      IF (IPIADGV .GT. MAXIAD64)  THEN
+        WRITE (*,'(2a,I4)') 'to much addresses for dynamik linking, ',
+     &                      'limit is ', MAXIAD64
+        WRITE (*,'(2a)') 'increase MAXIAD64 in cstab64.inc and ',
+     &                    'recompile COMIS'
+
+        STOP
+      END IF
+      IADGPLV(IPIADGV) = IADGPL
+      IADGP            = IPIADGV
+      CALL CCOPYA(IADGP,IQ(I+2),KSIDP-2)
+      END
+#endif
diff -urNad paw-2.14.04~/src/pawlib/comis/code/cstran.F paw-2.14.04/src/pawlib/comis/code/cstran.F
--- paw-2.14.04~/src/pawlib/comis/code/cstran.F	2001-02-07 04:27:01.000000000 -0500
+++ paw-2.14.04/src/pawlib/comis/code/cstran.F	2006-09-08 14:44:11.810263734 -0400
@@ -521,6 +521,7 @@
 *                 '#'             DRSJNT
 *            'OD'/'FI'/'ENDDO'/'ENDIF'/'END' DELIM DRSJNT
 ****
+      CHARACTER*8 MYCSPAWC
       INTEGER GSCMST(3046),GSSTRC(135),GSSTRP(255)
       INTEGER GSCMS1(361),GSCMS2(361),GSCMS3(361),GSCMS4(361),
      *GSCMS5(361),GSCMS6(361),GSCMS7(361),GSCMS8(361),GSCMS9(158)
@@ -719,6 +720,7 @@
       DATA IOST/0/
 **      DATA NHSSC/4H;   /, NHSEQ/4H=   /, NHSBR/4H)   /
       DATA NMPAWC/4HPAWC/
+      MYCSPAWC = 'CSPAWC  '
       CALL CCOPYA(IDEN,IDENPR,NWIDEN)
       NCIDPR=NCIDEN
       NWIDPR=NWIDEN
@@ -903,7 +905,7 @@
   211 CONTINUE
 #if defined(CERNLIB_PAW)
       KEYWD=22
-      CALL CCOPYS(MJSCHA('CSPAWC  '),JID,8)
+      CALL CCOPYS(MJSCHA(MYCSPAWC),JID,8)
       NCIDEN=6
       NWIDEN=2
       IGB=CSLTGB(IPVSB)
diff -urNad paw-2.14.04~/src/pawlib/comis/comis/cstab64.inc paw-2.14.04/src/pawlib/comis/comis/cstab64.inc
--- paw-2.14.04~/src/pawlib/comis/comis/cstab64.inc	1969-12-31 19:00:00.000000000 -0500
+++ paw-2.14.04/src/pawlib/comis/comis/cstab64.inc	2006-09-08 14:44:11.810263734 -0400
@@ -0,0 +1,10 @@
+*
+*
+* cstab64.inc
+*
+      PARAMETER (MAXIAD64=100) !maximum number of shared objects
+      INTEGER*8 IADGPL,IADGPLV(MAXIAD64)
+      INTEGER   IADGPL1, IADGPL2
+      COMMON /CSTB64/ IADGPL,IADGPLV
+      COMMON /CSTB64I/ IPIADGV
+      EQUIVALENCE (IADGPL, IADGPL1)
diff -urNad paw-2.14.04~/src/pawlib/comis/deccc/ccopys.c paw-2.14.04/src/pawlib/comis/deccc/ccopys.c
--- paw-2.14.04~/src/pawlib/comis/deccc/ccopys.c	1997-09-02 11:50:38.000000000 -0400
+++ paw-2.14.04/src/pawlib/comis/deccc/ccopys.c	2006-09-08 14:44:11.810263734 -0400
@@ -33,11 +33,42 @@
 #else
 void ccopys_(ja,jb,nn)
 #endif
+
+/*
+ * 64-bit pointer systems require a special treatment of addresses - see below -
+ * using the CERNLIB_QMLXIA64 cpp flag (H. Vogt - Sep 2005)
+ */
+
+/* For Itanium, the situation is even worse.  Itanium architecture is such
+ * that the data section starts at 0x6000000000000000.  The stack is
+ * supposed to be between 0x80...0 and 0xa0...0 starting at the high end
+ * and growing downwards, although on a test machine (merulo.debian.org)
+ * it seemed instead to start at 0x6000100000000000 and grow downwards.
+ * The addresses we actually get are truncated to the lowest 32 bits,
+ * so we assume that those greater than 0x80000000 are in the stack.
+ *
+ * Constant strings are in the text section starting at 0x40...0; we hope
+ * this function doesn't receive any.
+ * -- Kevin McCarty
+ */
+
+#if defined(CERNLIB_QMLXIA64)
+# include "cscal_lp64.h"
+     int *ja, *jb;
+     int *nn;
+{
+  int i,n; char *a,*b;
+  n=*nn; 
+  setaddr_lp64(*ja,*jb)
+
+#else
      char **ja, **jb;
      int *nn;
 {
   int i,n; char *a,*b;
-  n=*nn; a=*ja; b=*jb;
+  n=*nn; 
+  a=*ja; b=*jb;
+#endif
   if ( a >= b )
      for ( i=0; i<n; i++ )
           b[i]=a[i];
diff -urNad paw-2.14.04~/src/pawlib/comis/deccc/cs_hlshl.c paw-2.14.04/src/pawlib/comis/deccc/cs_hlshl.c
--- paw-2.14.04~/src/pawlib/comis/deccc/cs_hlshl.c	1998-01-12 04:56:07.000000000 -0500
+++ paw-2.14.04/src/pawlib/comis/deccc/cs_hlshl.c	2006-09-08 14:48:50.060932620 -0400
@@ -25,9 +25,24 @@
 #if (defined(CERNLIB_SUN)||defined(CERNLIB_SGI)||defined(CERNLIB_IBMRT)||defined(CERNLIB_ALPHA_OSF)||defined(CERNLIB_LINUX))&&(defined(CERNLIB_SHL))
 /*CMZ :          22/05/95  18.40.45  by  Julian Bunn*/
 /*-- Author :*/
-#if defined(CERNLIB_SUN)||defined(CERNLIB_LINUX)
+#if defined(CERNLIB_SUN)||defined(CERNLIB_LINUX)&&(!defined(CERNLIB_QMLXIA64))
 #define SUN
 #endif
+
+/*
+ * 64-bit pointer systems require a special treatment of addresses  
+ * using the CERNLIB_QMLXIA64 cpp flag (H. Vogt - Sep 2005)
+ * This code will be consistent with that of jumptn.c and jumpxn.c
+ * in packlib/kernlib/kerngen/ccgen (usage of jumpad_)
+ */
+
+#if defined(CERNLIB_LINUX)
+#include <stdio.h>
+#if defined(CERNLIB_QMLXIA64)
+#define ALPHA_OSF
+#endif
+#endif
+
 #if defined(CERNLIB_SGI)
 #define SGI
 #endif
diff -urNad paw-2.14.04~/src/pawlib/comis/deccc/cscal_lp64.h paw-2.14.04/src/pawlib/comis/deccc/cscal_lp64.h
--- paw-2.14.04~/src/pawlib/comis/deccc/cscal_lp64.h	1969-12-31 19:00:00.000000000 -0500
+++ paw-2.14.04/src/pawlib/comis/deccc/cscal_lp64.h	2006-09-08 14:44:11.811263521 -0400
@@ -0,0 +1,74 @@
+#if defined(CERNLIB_QMLXIA64)
+/* Hideous hack macros that attempt to deal with 64-bit pointers using
+ * knowledge about only 32 bits of them. */
+
+/* Test whether a variable is automatic or static based on the lowest 32 bits
+ * of its address.
+ *
+ * Itanium architecture is such that the data section starts at
+ * 0x6000000000000000.  The stack is supposed to be between 0x80...0 and
+ * 0xa0...0 starting at the high end and growing downwards, although on a test
+ * machine (merulo.debian.org) it seemed instead to start at 0x6000100000000000
+ * and grow downwards.  The addresses we actually get are truncated to the
+ * lowest 32 bits, so we assume that those greater than 0x80000000 are in the
+ * stack.  Constant strings are in the text section starting at 0x40...0; we
+ * hope that functions using these macros don't receive any.
+ *
+ * On AMD64, the data section and constant strings are all within 32 bits
+ * of NULL, starting at 0x400000 and growing upward.  The stack starts
+ * at 0x80000000000 and grows downward.  However, tests I've run on an AMD64
+ * indicate that the low-order 32 bits of the address for variables on the
+ * stack may be indistinguishable from data segments; therefore we simply
+ * hope (pray) that all variables used are in the data segments.
+ *
+ * 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.  Here it
+ * seems safe to suppose that the variable is in the stack if the uint32
+ * truncated address received is less than 0x20000000.
+ *
+ * -- Kevin McCarty
+ */
+
+#if defined (__ia64__)
+# define autotest(_var) ((unsigned long)(_var) > 0x80000000UL)
+#elif defined (__alpha__)
+# define autotest(_var) ((unsigned long)(_var) < 0x20000000UL)
+#else /* amd64 */
+# define autotest(_var) 0 /* can't test for it */
+#endif
+
+
+#define restore_pointer(_var, _ptr, _cast) do {			      	    \
+   static int sdummy = 0; int adummy = 0;                                   \
+   unsigned long sbase = ((unsigned long)&sdummy) & 0xffffffff00000000UL;   \
+   unsigned long abase = ((unsigned long)&adummy) & 0xffffffff00000000UL;   \
+   _ptr = (_cast)((unsigned long)(_var) + (autotest(_var) ? abase : sbase));\
+ } while (0)
+
+
+#define setcall_lp64(type)                                                  \
+ long *fptr;                                                                \
+ int *n;                                                                    \
+ unsigned pin[16];                                                          \
+{                                                                           \
+   int jumpad_();                                                           \
+   type (*name)();                                                          \
+   unsigned long ptr = (unsigned long)jumpad_;                              \
+   unsigned long p[16];                                                     \
+   int  count;                                                              \
+   ptr += *fptr;                                                            \
+   name = (type (*)())ptr;                                                  \
+   for ( count=0; count<16; count++ )                                       \
+     restore_pointer(pin[count], p[count], unsigned long);                  \
+   /* end of macro */
+
+
+#define setaddr_lp64(__ja, __jb)                                            \
+  restore_pointer(__ja, a, char*);                                          \
+  restore_pointer(__jb, b, char*);                                          \
+   /* end of macro */
+
+#endif
+
diff -urNad paw-2.14.04~/src/pawlib/comis/deccc/cscald.c paw-2.14.04/src/pawlib/comis/deccc/cscald.c
--- paw-2.14.04~/src/pawlib/comis/deccc/cscald.c	2004-10-27 05:01:54.000000000 -0400
+++ paw-2.14.04/src/pawlib/comis/deccc/cscald.c	2006-09-08 14:45:54.322410202 -0400
@@ -29,11 +29,10 @@
 #define cscald   
 #undef  cscald
 
-#ifdef CERNLIB_WINNT
+#if defined(CERNLIB_WINNT) || defined(CERNLIB_LINUX)
 # include <stdio.h>
 #endif
-
-#if (defined(CERNLIB_QX_SC))&&(!defined(CERNLIB_WINNT))
+#if (defined(CERNLIB_QX_SC))&&(!defined(CERNLIB_WINNT))&&(!defined(CERNLIB_QMLXIA64))
 double cscald_ (name,n,p)
 #endif
 #if defined(CERNLIB_QXNO_SC)
@@ -46,10 +45,30 @@
     int CSCALD (name,n,p)
 #  endif
 #endif
+
+/*
+ * 64-bit pointer systems require a special treatment of addresses - see below 
+ * using the CERNLIB_QMLXIA64 macro definition (H. Vogt - Sep 2005)
+ * This code will be consistent with that of jumptn.c and jumpxn.c
+ * in packlib/kernlib/kerngen/ccgen (usage of jumpad_)
+ *
+ * for shared objects loaded by the dynamic linker content of the 1st arg
+ * in cscald_ is a pointer which may be above the 32 bit address space
+ * therefore *fptr has been changed to type long
+ * see changes in csintx.F, cskcal.F, ... (introduction of INTEGER*8 array for
+ * those pointers)
+ */
+
+#if defined(CERNLIB_QMLXIA64)
+# include "cscal_lp64.h"
+double cscald_ (fptr,n,pin)
+ setcall_lp64(double)
+#else
  double (type_of_call *(*name)) ();
  int *n;
- int *p[15];
+ int *p[16];
 {
+#endif
    double d;
    switch (*n)
    {
diff -urNad paw-2.14.04~/src/pawlib/comis/deccc/cscali.c paw-2.14.04/src/pawlib/comis/deccc/cscali.c
--- paw-2.14.04~/src/pawlib/comis/deccc/cscali.c	2004-10-22 08:42:40.000000000 -0400
+++ paw-2.14.04/src/pawlib/comis/deccc/cscali.c	2006-09-08 14:46:14.981004397 -0400
@@ -26,11 +26,10 @@
 #define cscali
 #undef  cscali
 
-#ifdef CERNLIB_WINNT
+#if defined(CERNLIB_WINNT) || defined(CERNLIB_LINUX)
 # include <stdio.h>
 #endif
-
-#if (defined(CERNLIB_QX_SC))&&(!defined(CERNLIB_WINNT))
+#if (defined(CERNLIB_QX_SC))&&(!defined(CERNLIB_WINNT))&&(!defined(CERNLIB_QMLXIA64))
 int cscali_ (name,n,p)
 #endif
 #if defined(CERNLIB_QXNO_SC)
@@ -39,10 +38,30 @@
 #if defined(CERNLIB_QXCAPT)
 int type_of_call CSCALI (name,n,p)
 #endif
+
+/*
+ * 64-bit pointer systems require a special treatment of addresses - see below 
+ * using the CERNLIB_QMLXIA64 macro definition (H. Vogt - Sep 2005)
+ * This code will be consistent with that of jumptn.c and jumpxn.c
+ * in packlib/kernlib/kerngen/ccgen (usage of jumpad_)
+ *
+ * for shared objects loaded by the dynamic linker content of the 1st arg
+ * in cscali_ is a pointer which may be above the 32 bit address space
+ * therefore *fptr has been changed to type long
+ * see changes in csintx.F, cskcal.F, ... (introduction of INTEGER*8 array for
+ * those pointers)
+ */
+
+#if defined(CERNLIB_QMLXIA64)
+# include "cscal_lp64.h"
+int cscali_ (fptr,n,pin)
+ setcall_lp64(int)
+#else
  int (type_of_call *(*name)) ();
  int *n;
- int *p[15];
+ int *p[16];
 {
+#endif
    int i;
    switch (*n)
    {
diff -urNad paw-2.14.04~/src/pawlib/comis/deccc/cscalr.c paw-2.14.04/src/pawlib/comis/deccc/cscalr.c
--- paw-2.14.04~/src/pawlib/comis/deccc/cscalr.c	2004-10-22 08:03:16.000000000 -0400
+++ paw-2.14.04/src/pawlib/comis/deccc/cscalr.c	2006-09-08 14:47:10.662129691 -0400
@@ -30,19 +30,15 @@
 #define cscalr
 #undef  cscalr
 
-#ifdef CERNLIB_WINNT
+#if defined(CERNLIB_WINNT) || defined(CERNLIB_LINUX)
 # include <stdio.h>
 #endif
-
-
-#if (defined(CERNLIB_QX_SC))&&(!defined(CERNLIB_WINNT))
+#if (defined(CERNLIB_QX_SC))&&(!defined(CERNLIB_WINNT))&&(!defined(CERNLIB_QMLXIA64))
 float cscalr_ (name,n,p)
 #endif
-
 #if defined(CERNLIB_QXNO_SC)
 float cscalr (name,n,p)
 #endif
-
 #if defined(CERNLIB_QXCAPT)
 # if defined(CERNLIB_MSSTDCALL)
    float type_of_call CSCALR(name,n,p)
@@ -51,10 +47,42 @@
 # endif
 #endif
 
+/*
+ * 64-bit pointer systems require a special treatment of addresses - see below 
+ * using the CERNLIB_QMLXIA64 macro definition (H. Vogt - Sep 2005)
+ * This code will be consistent with that of jumptn.c and jumpxn.c
+ * in packlib/kernlib/kerngen/ccgen (usage of jumpad_)
+ *
+ * for shared objects loaded by the dynamic linker content of the 1st arg
+ * in cscalr_ is a pointer which may be above the 32 bit address space
+ * therefore *fptr has been changed to type long
+ * see changes in csintx.F, cskcal.F, ... (introduction of INTEGER*8 array for
+ * those pointers)
+ */
+
+#if defined(CERNLIB_QMLXIA64)
+
+/* Additional note: g77 generates code such that it expects REAL functions
+ * to return "double".  Hence C functions to be used in FORTRAN as REAL
+ * must return "double", and declarations of REAL FORTRAN functions in C files
+ * must also return "double".  On most architectures one can get away with
+ * using "float" instead, but not on amd64 ... see
+ * http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15397
+ *
+ * -- Kevin McCarty */
+# if !(defined(CERNLIB_GFORTRAN)||defined(CERNLIB_INTELIFC))  /* i.e. g77 */
+#  define float double
+# endif
+
+# include "cscal_lp64.h"
+float cscalr_ (fptr,n,pin)
+ setcall_lp64(float)
+#else
  float (type_of_call *(*name)) ();
  int *n;
- int *p[15];
+ int *p[16];
 {
+#endif
    float r;
    switch (*n)
    {
diff -urNad paw-2.14.04~/src/pawlib/comis/deccc/cstrcmp.c paw-2.14.04/src/pawlib/comis/deccc/cstrcmp.c
--- paw-2.14.04~/src/pawlib/comis/deccc/cstrcmp.c	1997-09-02 11:50:44.000000000 -0400
+++ paw-2.14.04/src/pawlib/comis/deccc/cstrcmp.c	2006-09-08 14:44:11.812263308 -0400
@@ -36,6 +36,43 @@
 #else
 int cstrcmp_(ja,na,jb,nb)
 #endif
+
+/*
+ * 64-bit pointer systems require a special treatment of addresses - see below -
+ * using the CERNLIB_QMLXIA64 cpp flag (H. Vogt - Sep 2005)
+ */
+ 
+/* For Itanium, the situation is even worse.  Itanium architecture is such
+ * that the data section starts at 0x6000000000000000.  The stack is
+ * supposed to be between 0x80...0 and 0xa0...0 starting at the high end
+ * and growing downwards, although on a test machine (merulo.debian.org)
+ * it seemed instead to start at 0x6000100000000000 and grow downwards.
+ * The addresses we actually get are truncated to the lowest 32 bits,
+ * so we assume that those greater than 0x80000000 are in the stack.
+ *
+ * Constant strings are in the text section starting at 0x40...0; we hope
+ * this function doesn't receive any.
+ * -- Kevin McCarty
+ */
+
+#if defined(CERNLIB_QMLXIA64)
+# include "cscal_lp64.h"
+     int *ja, *jb;
+     int *na, *nb;
+{
+
+  static int i,la,lb,k; static char *a,*b;
+  if ( *na >= *nb )
+     {
+       setaddr_lp64(*ja,*jb)
+       la=*na; lb=*nb; k=1;
+     }
+  else
+     {
+       setaddr_lp64(*jb,*ja)
+       la=*nb; lb=*na; k=-1;
+     }
+#else
      char **ja, **jb;
      int *na, *nb;
 {
@@ -48,6 +85,7 @@
     {
       a=*jb; b=*ja; la=*nb; lb=*na; k=-1;
      }
+#endif
   for ( i=0; i<lb; i++ )
     { if(a[i] != b[i])
       { return ( (a[i] > b[i]) ? k : -k ); }
diff -urNad paw-2.14.04~/src/pawlib/paw/cmotif/att_color.c paw-2.14.04/src/pawlib/paw/cmotif/att_color.c
--- paw-2.14.04~/src/pawlib/paw/cmotif/att_color.c	1996-03-01 06:38:53.000000000 -0500
+++ paw-2.14.04/src/pawlib/paw/cmotif/att_color.c	2006-09-08 14:44:11.812263308 -0400
@@ -114,7 +114,7 @@
 
    XtVaGetValues(ObjectRow,XmNmenuHistory,&CurrentObject,NULL);
    XtVaGetValues(CurrentObject,XmNuserData,&data,NULL);
-   switch ((int ) client_data) {
+   switch ((long) client_data) {
       case 1: /* Surface */
          sprintf(Svalue,"%d",data->SurfaceColor);
          break;
@@ -164,7 +164,7 @@
       Ncol=atoi((char *)XmTextGetString(NcolText));
    } else Ncol=8;
    ColorNum=atoi((char *)XmTextGetString(AttColorText));
-   switch((int) client_data) {
+   switch((long) client_data) {
       case 1: /* UpArrow */
          ColorNum++;
          break;
diff -urNad paw-2.14.04~/src/pawlib/paw/cmotif/att_define_color.c paw-2.14.04/src/pawlib/paw/cmotif/att_define_color.c
--- paw-2.14.04~/src/pawlib/paw/cmotif/att_define_color.c	1999-03-01 04:07:01.000000000 -0500
+++ paw-2.14.04/src/pawlib/paw/cmotif/att_define_color.c	2006-09-08 14:44:11.812263308 -0400
@@ -338,7 +338,7 @@
 static void MoveScale_cb(Widget w,caddr_t client_data,
                          XmAnyCallbackStruct *call_data)
 {
-   switch ((int ) client_data) {
+   switch ((long) client_data) {
       case 1 : /* RED */
          EditColor.red=((XmScaleCallbackStruct *) call_data)->value;
          break;
@@ -369,7 +369,7 @@
       default :
          fprintf(stderr,"Error in function MoveScale_cb");
    } /*end of switch */
-   apply_color((int) client_data);
+   apply_color((long) client_data);
 }
 
 /*****************************************************************************
@@ -452,7 +452,7 @@
    char *ComStr;
 
    ColorNum=atoi((char *)XmTextGetString(ColorIndex));
-   switch((int) client_data) {
+   switch((long) client_data) {
       case 1: /* UpArrow */
          ColorNum++;
          break;
@@ -494,7 +494,7 @@
    XmAnyCallbackStruct cb;
 
    Ncol=atoi((char *)XmTextGetString(NcolText));
-   switch((int) client_data) {
+   switch((long) client_data) {
       case 1: /* UpArrow*/
          Ncol++;
          break;
diff -urNad paw-2.14.04~/src/pawlib/paw/cmotif/att_general.c paw-2.14.04/src/pawlib/paw/cmotif/att_general.c
--- paw-2.14.04~/src/pawlib/paw/cmotif/att_general.c	1996-03-01 06:38:53.000000000 -0500
+++ paw-2.14.04/src/pawlib/paw/cmotif/att_general.c	2006-09-08 14:44:11.813263095 -0400
@@ -454,7 +454,7 @@
 {
    char ComStr[15];
 
-   sprintf(ComStr,"IGSET MTYP %d",(int) client_data);
+   sprintf(ComStr,"IGSET MTYP %ld",(long) client_data);
    execute_kuip_cmd(ComStr);
    if (appres.auto_refresh) {
       plot_current_histo();
@@ -471,8 +471,8 @@
 {
    char ComStr[15];
 
-   sprintf(ComStr,"IGSET LTYP %d",(int) client_data);
-   sprintf(ComStr,"SET DMOD %d",(int) client_data);
+   sprintf(ComStr,"IGSET LTYP %ld",(long) client_data);
+   sprintf(ComStr,"SET DMOD %ld",(long) client_data);
 
    execute_kuip_cmd(ComStr);
    if (appres.auto_refresh) {
diff -urNad paw-2.14.04~/src/pawlib/paw/cmotif/att_geometry.c paw-2.14.04/src/pawlib/paw/cmotif/att_geometry.c
--- paw-2.14.04~/src/pawlib/paw/cmotif/att_geometry.c	1999-02-01 12:56:11.000000000 -0500
+++ paw-2.14.04/src/pawlib/paw/cmotif/att_geometry.c	2006-09-08 14:44:11.815262668 -0400
@@ -2582,7 +2582,7 @@
    char *ComStr;
 
    XtVaGetValues(CButton,XmNuserData,&data,NULL);
-   switch ((int) client_data ) {
+   switch ((long) client_data ) {
       case 1 : /**** value change in text */
          Fvalue= (float)atof((char *)XmTextGetString(Text));
 
diff -urNad paw-2.14.04~/src/pawlib/paw/cmotif/att_main.c paw-2.14.04/src/pawlib/paw/cmotif/att_main.c
--- paw-2.14.04~/src/pawlib/paw/cmotif/att_main.c	1996-03-01 06:38:54.000000000 -0500
+++ paw-2.14.04/src/pawlib/paw/cmotif/att_main.c	2006-09-08 14:44:11.816262455 -0400
@@ -139,7 +139,7 @@
 {
    int i;
    XmAnyCallbackStruct cb;
-   int pos;
+   long pos;
    char tempstr[6];
    int tempint;
 
@@ -147,7 +147,7 @@
 
    switch (*label) {
       case 'B' :
-         pos=(int) strchr(value,'.')-(int) value;
+         pos=strchr(value,'.')-value;
          strncpy(tempstr,value,pos);
          tempint=atoi(tempstr);
          if (tempint>=1000) {
@@ -157,7 +157,7 @@
             StateObject[i].ContourColor=tempint;
             StateObject[i].SurfaceColor=0;
          }
-         value=(char *)((int) value+pos+1);
+         value=(char *)(value+pos+1);
          strncpy(tempstr,value,2);
          StateObject[i].StatColor=tempstr[1]-'0';
          StateObject[i].ZoneColor=tempstr[0]-'0';
@@ -324,12 +324,12 @@
 static char *Clean(char *string)
 {
    char *Apos;
-   int pos;
+   long pos;
    char end[MAX_TITLE_SIZE];
 
    Apos=strrchr(string,39); /* #27 == ' */
    if (Apos) {
-      pos=((int)Apos  - (int)string  );
+      pos=Apos  - string;
       strcpy(end,++Apos);
       string[pos]='\0';
       strcat(Clean(string),"@'");
@@ -692,7 +692,7 @@
    XtVaGetValues(ObjectRow,XmNmenuHistory,&CurrentToggle,NULL);
    XtVaGetValues(CurrentToggle,XmNuserData,&CurrentState,NULL);
    LineWidth=CurrentState->LineWidth;
-   switch((int) client_data) {
+   switch((long) client_data) {
       case 1: /* UpArrow */
          LineWidth++;
          break;
diff -urNad paw-2.14.04~/src/pawlib/paw/cmotif/attatch.c paw-2.14.04/src/pawlib/paw/cmotif/attatch.c
--- paw-2.14.04~/src/pawlib/paw/cmotif/attatch.c	1996-03-01 06:38:54.000000000 -0500
+++ paw-2.14.04/src/pawlib/paw/cmotif/attatch.c	2006-09-08 14:44:11.816262455 -0400
@@ -88,7 +88,7 @@
 
    XtVaGetValues(ObjectRow,XmNmenuHistory,&CurrentObject,NULL);
    XtVaGetValues(CurrentObject,XmNuserData,&data,NULL);
-   switch ((int) client_data ) {
+   switch ((long) client_data ) {
       case 1 : /**** value change in text */
          Svalue=(char *)XmTextGetString(IndexText);
 
@@ -124,7 +124,7 @@
        /* value change in scale */
          XmScaleGetValue(w,&Ivalue);
          Svalue=(char *)XmTextGetString(IndexText);
-         Svalue[((int) client_data )-2]='0' + Ivalue;
+         Svalue[((long) client_data )-2]='0' + Ivalue;
          XmTextSetString(IndexText,Svalue);
          if (data->IndexHatch!=atoi(Svalue)) {
             data->IndexHatch=atoi(Svalue);
diff -urNad paw-2.14.04~/src/pawlib/paw/cmotif/axis.c paw-2.14.04/src/pawlib/paw/cmotif/axis.c
--- paw-2.14.04~/src/pawlib/paw/cmotif/axis.c	1996-03-01 06:38:54.000000000 -0500
+++ paw-2.14.04/src/pawlib/paw/cmotif/axis.c	2006-09-08 14:44:11.817262242 -0400
@@ -1336,7 +1336,7 @@
 {
    XmAnyCallbackStruct cbs1;
 
-   switch ((int)type) {
+   switch ((long)type) {
       case 1:
        axis.xo = 1;
        break;
@@ -1432,7 +1432,7 @@
    unselect_list();
    comstr = XtCalloc(MAX_CMD_LENGTH, 1);
 
-   switch ((int)type) {
+   switch ((long)type) {
       case 0:
 
        XmToggleButtonGadgetSetState(labeltoggleButtonGadget0,True,False);
@@ -1680,7 +1680,7 @@
    cbs1.reason = 0;
    cbs1.event = (XEvent *) NULL;
 
-   switch ((int) num) {
+   switch ((long) num) {
       case 1:
        if (XmToggleButtonGadgetGetState(labeltoggleButtonGadget1))
           XtCallCallbacks(labeltoggleButtonGadget1,XmNvalueChangedCallback,
diff -urNad paw-2.14.04~/src/pawlib/paw/cmotif/histo.c paw-2.14.04/src/pawlib/paw/cmotif/histo.c
--- paw-2.14.04~/src/pawlib/paw/cmotif/histo.c	1996-03-01 06:38:56.000000000 -0500
+++ paw-2.14.04/src/pawlib/paw/cmotif/histo.c	2006-09-08 14:44:11.818262029 -0400
@@ -529,7 +529,7 @@
 static void show_option(Widget w, int *type, XmToggleButtonCallbackStruct *cbs)
 {
    if (cbs->set) {
-      switch( (int)type ) {
+      switch( (long)type ) {
          case 1:
             if ( !widget_stat ) {
                widget_stat = create_statFormDialog();
@@ -651,7 +651,7 @@
             return;
       }
    } else {
-      switch( (int)type ) {
+      switch( (long)type ) {
          case 1:
           if (widget_stat) {
              XtUnmanageChild(widget_stat);
@@ -758,7 +758,7 @@
    int            x,y;
 
 
-   switch( (int)type ) {
+   switch( (long)type ) {
       case 1:
          sprintf (comstr,"Set STAT %d%d%d%d%d%d%d"
                   ,XmToggleButtonGadgetGetState(AllchanToggleButtonGadget)
@@ -996,7 +996,7 @@
 static void coordinate_set(Widget w, int *type, XmAnyCallbackStruct *cbs)
 {
 
-   switch( (int)type ) {
+   switch( (long)type ) {
       case 1:
          sprintf (histogram.coordinate,"   ");
          break;
@@ -1034,7 +1034,7 @@
    int      ilen1, ilen2;
    XmString xmstr;
 
-   switch( (int)type ) {
+   switch( (long)type ) {
       case 1:
          histogram.x1 = cbs->value;
          if( x_range_lock != 0 ) {
@@ -1131,7 +1131,7 @@
       if( histogram.y1 <= 0 ) histogram.y1 = 1;
       if( histogram.y2 <= 0 ) histogram.y2 = 1;
 
-   if ( (int)type < 3 ) {
+   if ( (long)type < 3 ) {
       XmScaleSetValue(X2Scale,histogram.x2);
       XmScaleSetValue(X1Scale,histogram.x1);
       if( x_range_lock == 0 || upd_nbin) {
diff -urNad paw-2.14.04~/src/pawlib/paw/cmotif/init.c paw-2.14.04/src/pawlib/paw/cmotif/init.c
--- paw-2.14.04~/src/pawlib/paw/cmotif/init.c	1996-03-12 11:58:51.000000000 -0500
+++ paw-2.14.04/src/pawlib/paw/cmotif/init.c	2006-09-08 14:44:11.818262029 -0400
@@ -286,7 +286,7 @@
 static void destroy_browser(Widget w, int *which, XmAnyCallbackStruct *cbs)
 {
    MenuCbStruct    *menu_item;
-   int              i = (int) which;
+   long             i = (long) which;
 
    browser[i].widget = NULL;
    if (browser[i].open_dialog) {
@@ -308,7 +308,7 @@
  ***********************************************************************/
 static void destroy_graphics(Widget w, int *which, XmAnyCallbackStruct *cbs)
 {
-   int    i = (int) which;
+   long   i = (long) which;
 
    graphics[i].widget = NULL;
 }
diff -urNad paw-2.14.04~/src/pawlib/paw/ntuple/c_hcntpar.h paw-2.14.04/src/pawlib/paw/ntuple/c_hcntpar.h
--- paw-2.14.04~/src/pawlib/paw/ntuple/c_hcntpar.h	1996-04-23 14:37:45.000000000 -0400
+++ paw-2.14.04/src/pawlib/paw/ntuple/c_hcntpar.h	2006-09-08 14:44:11.818262029 -0400
@@ -47,7 +47,7 @@
 #define ZID	12
 #define ZITMP	10
 #define ZNTMP	6
-#define ZNTMP1	3
+#define ZNTMP1	4
 #define ZLINK	6
 
 #endif	/*	CERN_C_HCNTPAR	*/
diff -urNad paw-2.14.04~/src/pawlib/paw/ntuple/qp_execute.c paw-2.14.04/src/pawlib/paw/ntuple/qp_execute.c
--- paw-2.14.04~/src/pawlib/paw/ntuple/qp_execute.c	2001-09-18 09:41:35.000000000 -0400
+++ paw-2.14.04/src/pawlib/paw/ntuple/qp_execute.c	2006-09-08 14:44:11.819261816 -0400
@@ -184,12 +184,19 @@
 					/* all definitions for the stack */
 #undef INIT_STACK_TO_NULL		/* are kept together in this file */
 
+#if defined(CERNLIB_QMLXIA64)
+# undef HBALLOC
+# undef HGNTBF
+# define HBALLOC HBALLOC64
+# define HGNTBF HGNTBF64
+#endif
+
 /* extern functions */
 extern void qp_exec_evt( QueryExe *, long, long, QPCmd *, int *);
 
 typedef		char	tName[MAX_NAME_LEN+1];
 tName		*namelist;
-int		*offsetlist;
+long		*offsetlist;
 int		*indexlist;
 
 
@@ -245,7 +252,23 @@
 	char		ntname[MAX_NAME_LEN+6];
 	int		i, ierr, indx, itype, isize, ielem;
 	Int32 *		addr;
-	int		ibase[1], ioff, nuse;
+
+	/* LP64 compatibility:
+	   - use static for ibase (at least) because its address is stored
+	     as Int32 in structure CWNBlock
+	     static takes ibase from the stack and puts it the code area.
+	   - use type long for ioff and offsetlist[i]
+	     (for 32 bit architectures type long is 4 Bytes as it is used
+	      also in packlib/hbook/chbook/halloc.c in hballo1 !)
+	   The x86-64 ABI has the code area in the 32 bit address space
+	   but addresses to the stack and to dynamically allocated areas
+	   may and will be above the 32 bit address space (below 0x80000000000).
+	   See also: http://www.x86-64.org/documentation/abi-0.96.pdf
+	   (H. Vogt, Oct. 2005) */
+
+	static int	ibase[1];
+	long		ioff;
+	int		nuse;
 	int		id = qe->id;
 	char *		path = qe->path;
 	char *		title;
@@ -286,7 +309,11 @@
 	CWNBlock = (RefCWN *) calloc( CWNCount + 1, sizeof( RefCWN ) );
 	qp_assert( MAX_NAME_LEN == 32 ); /* see hbook.h (HGNTBF) */
 	namelist = (tName *) calloc( CWNCount + 1, sizeof(tName) );
-	offsetlist = (int *) calloc( CWNCount + 1, sizeof(int) );
+
+	/* offsetlist should be of type long (see above) (H. Vogt, Oct. 2005) */
+
+	offsetlist = (long *) calloc( CWNCount + 1, sizeof(long) );
+
 	indexlist = (int *) calloc( CWNCount + 1, sizeof(int) );
 	qp_assert(
 		CWNBlock != 0 &&
@@ -381,6 +408,7 @@
 						offsetlist[nt_load_cnt]=
 						CWNBlock[index].p -
 						PAWC.iq_eqv;
+
 						strncpy(
 						namelist[nt_load_cnt],
 						vi->name,
@@ -871,8 +899,21 @@
 			if ( cmd->u.scan.pawpp ) {
 				char	buf[33];
 
+				/* for LP64 ABI matlab and matrow are 64 bit pointer, type is void*  
+				   but PCADDR.jmlab and PCADDR.jmrow are of type int
+				   see: c_pcaddr.h and qp_command.h
+				   it is related to CWNBlock -> see above (H. Vogt)*/
+
+#if defined(CERNLIB_QMLXIA64)
+				unsigned long long int	 myjmlab, myjmrow;
+				myjmlab = PCADDR.jmlab;
+				myjmrow = PCADDR.jmrow;
+				c->matlab = (TableCallBack) myjmlab;
+				c->matrow = (TableCallBack) myjmrow;
+#else
 				c->matlab = (TableCallBack) PCADDR.jmlab;
 				c->matrow = (TableCallBack) PCADDR.jmrow;
+#endif
 
 				qp_assert( qe->nexpr <= MAX_OUTSTR );
 
@@ -1791,6 +1832,31 @@
 	PAWIDN.idnevt = ievt;
         PAWCHN.ichevt = ievt_chain;
 
+#if defined(CERNLIB_QMLXIA64)
+/* avoid addresses from calloc which are above 32 bits here */
+	static Int32 helpp[8];
+	int i;
+	if ( npar < 9 ) {
+		for ( i=0; i<npar; i++ ) helpp[i] = stack[frame[framep-i]];
+	}
+	switch ( npar ) {
+	case 8: p8 = &helpp[7];
+	case 7: p7 = &helpp[6];
+	case 6: p6 = &helpp[5];
+	case 5: p5 = &helpp[4];
+	case 4: p4 = &helpp[3];
+	case 3: p3 = &helpp[2];
+	case 2: p2 = &helpp[1];
+	case 1: p1 = &helpp[0];
+	case 0: 
+		break;
+	default:
+		sf_report( "exec_comis: To many arguments (%d)\n", npar );
+		*errp = R_INTERNAL_ERROR;
+		return FALSE;
+		break;
+	}
+#else
 	switch ( npar ) {
 	case 8: p8 = &stack[frame[framep-7]];
 	case 7: p7 = &stack[frame[framep-6]];
@@ -1808,6 +1874,7 @@
 		return FALSE;
 		break;
 	}
+#endif
 
 	switch ( fc ) {
 
diff -urNad paw-2.14.04~/src/pawlib/paw/ntuple/qp_hbook_if.c paw-2.14.04/src/pawlib/paw/ntuple/qp_hbook_if.c
--- paw-2.14.04~/src/pawlib/paw/ntuple/qp_hbook_if.c	1999-07-05 11:43:35.000000000 -0400
+++ paw-2.14.04/src/pawlib/paw/ntuple/qp_hbook_if.c	2006-09-08 14:44:11.820261603 -0400
@@ -149,7 +149,15 @@
 	int	idn, idtmp;
 	int	icycle;
 	int	ierr;
-	int     izero = 0;
+
+	/* LP64 compatibility:
+	   use static for izero because its address is fetched by hbname_
+	   using locb and locb expects 32 bit addresses only.
+	   static takes izero from the stack and puts it the code area
+	   and the LP64 ABI has the code area in the 32 bit address space
+	   but the stack starts downward from 0x80000000000 (H. Vogt) */
+
+	static int     izero = 0;
 
 	/* split string into  path, id and cycle */
 


--- NEW FILE paw-706-use-external-xbae-and-xaw.dpatch ---
#! /bin/sh /usr/share/dpatch/dpatch-run
## 706-use-external-xbae-and-xaw.dpatch by  <kmccarty at debian.org>
##
## All lines beginning with `## DP:' are a description of the patch.
## DP: Do not compile embedded old Xbae and Xaw code.

@DPATCH@
diff -urNad paw-2.14.04.dfsg~/src/paw_motif/Imakefile paw-2.14.04.dfsg/src/paw_motif/Imakefile
--- paw-2.14.04.dfsg~/src/paw_motif/Imakefile	2007-01-11 16:35:03.203039255 -0500
+++ paw-2.14.04.dfsg/src/paw_motif/Imakefile	2007-01-11 16:35:55.436956428 -0500
@@ -5,7 +5,7 @@
 #define PassCDebugFlags
 
 MotifDependantMakeVar(MOTIF_DIRS,cmotif fmotif fpanelsc)
-MotifDependantMakeVar(PAWPP_DIRS,fpanelsf tree uimx)
+MotifDependantMakeVar(PAWPP_DIRS,fpanelsf      uimx)
 
 LIBDIRS= code cdf
 
@@ -13,6 +13,7 @@
 LIBDIRS :=$(LIBDIRS) $(MOTIF_DIRS) $(PAWPP_DIRS)
 #endif
 
+#if 0 /* we want to use external libXbae */
 #if defined(CERNLIB_UNIX) && !defined(CERNLIB_WINNT)
 MotifDependantMakeVar(PAWPP_DIRS,xbae)
 LIBDIRS := $(LIBDIRS) $(PAWPP_DIRS)
@@ -22,6 +23,7 @@
 MotifDependantMakeVar(PAWPP_DIRS,xbaevms)
 LIBDIRS := $(LIBDIRS) $(PAWPP_DIRS)
 #endif
+#endif
 
 SUBDIRS= $(LIBDIRS)
 
diff -urNad paw-2.14.04.dfsg~/src/paw_motif/cmotif/chain_tree.c paw-2.14.04.dfsg/src/paw_motif/cmotif/chain_tree.c
--- paw-2.14.04.dfsg~/src/paw_motif/cmotif/chain_tree.c	1996-03-01 06:38:54.000000000 -0500
+++ paw-2.14.04.dfsg/src/paw_motif/cmotif/chain_tree.c	2007-01-11 16:37:01.447950095 -0500
@@ -19,7 +19,7 @@
 
 #include "hmotif/pawm.h"
 #include "hpaw/chain.h"
-#include "paw/tree.h"
+#include <X11/Xaw/Tree.h>
 
 #if defined(CERNLIB_QX_SC)
 #define  show_chain_tree     show_chain_tree_
diff -urNad paw-2.14.04.dfsg~/src/paw_motif/hmotif/scan.h paw-2.14.04.dfsg/src/paw_motif/hmotif/scan.h
--- paw-2.14.04.dfsg~/src/paw_motif/hmotif/scan.h	1996-09-09 11:21:28.000000000 -0400
+++ paw-2.14.04.dfsg/src/paw_motif/hmotif/scan.h	2007-01-11 16:36:26.990261436 -0500
@@ -20,10 +20,10 @@
 #define _scan_h
 
 #include "ntuplescan.h"
-#ifdef CERNLIB_VAXVMS
+#if 0
 #include "xbaevms/matrix.h"
 #else
-#include "xbae/matrix.h"
+#include <Xbae/Matrix.h>
 #endif
 
 


Index: .cvsignore
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/.cvsignore,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- .cvsignore	11 Apr 2006 22:53:00 -0000	1.4
+++ .cvsignore	21 Apr 2007 14:35:24 -0000	1.5
@@ -1,16 +1,6 @@
-src_car.tar.gz
-src_Imakefile.tar.gz
-src_patchy.tar.gz
-src_cfortran.tar.gz
-src_include.tar.gz
-src_pawlib.tar.gz
-src_config.tar.gz
-src_mathlib.tar.gz
-src_phtools.tar.gz
-src_geant321.tar.gz
-src_mclibs.tar.gz
-src_scripts.tar.gz
-src_graflib.tar.gz
-src_packlib.tar.gz
-xsneut95.dat
+paw_2.14.04.dfsg-1.diff.gz
+mclibs_2006.dfsg-1.diff.gz
+cernlib_2006.dfsg-1.diff.gz
+geant321_3.21.14.dfsg-4.diff.gz
+2006_src-free.tar.gz
 patchy.tar.gz


Index: 315-fixes-for-MacOSX.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/315-fixes-for-MacOSX.dpatch,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- 315-fixes-for-MacOSX.dpatch	14 Dec 2005 16:52:26 -0000	1.3
+++ 315-fixes-for-MacOSX.dpatch	21 Apr 2007 14:35:24 -0000	1.4
@@ -6,9 +6,9 @@
 ## DP: and run on OS X.
 
 @DPATCH@
-diff -urNad cernlib-2005.05.09.dfsg~/src/Imakefile cernlib-2005.05.09.dfsg/src/Imakefile
---- cernlib-2005.05.09.dfsg~/src/Imakefile	1996-12-16 10:08:41.000000000 -0500
-+++ cernlib-2005.05.09.dfsg/src/Imakefile	2005-12-07 14:47:34.141148558 -0500
+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
  
@@ -22,9 +22,9 @@
  
  InstallLibSubdirs($(LIBDIRS))
  
-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	2005-04-18 11:39:25.000000000 -0400
-+++ cernlib-2005.05.09.dfsg/src/config/Imake.rules	2005-12-07 14:47:34.139148983 -0500
+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							@@\
@@ -43,381 +43,136 @@
  									@@\
  clean::									@@\
  	RemoveFiles(dst)
-diff -urNad cernlib-2005.05.09.dfsg~/src/config/MacOSX.cf cernlib-2005.05.09.dfsg/src/config/MacOSX.cf
---- cernlib-2005.05.09.dfsg~/src/config/MacOSX.cf	1969-12-31 19:00:00.000000000 -0500
-+++ cernlib-2005.05.09.dfsg/src/config/MacOSX.cf	2005-12-07 14:47:34.140148771 -0500
-@@ -0,0 +1,170 @@
-+XCOMM platform:  $SFO: MOSXS.cf,v 1.0 95/11/19 23:21:00 sl Exp $
-+
-+#define OSVendor          Apple Computer, Inc.
-+#ifdef MacOSXArchitecture
-+#define OSName            MacOSX
-+#define OSMajorVersion    DefaultOSMajorVersion
-+#define OSMinorVersion    DefaultOSMinorVersion
-+#define OSTeenyVersion    0
-+#endif
-+
-+#define ProjectRulesFile  <MacOSX.rules>
-+#define ProjectTmplFile   <MacOSX.tmpl>
-+
-+#define InstKmemFlags -m 2755 -g kmem
-+/* #define ConstructMFLAGS		NO */
-+
-+#define HasNdbm     YES
-+#define SetTtyGroup YES
-+#define HasBsearch  YES
-+#ifdef MacOSXArchitecture
-+#define HasPutenv               YES
-+#define MathLibrary             /**/
-+#define DBMLibrary              /**/
-+#define TermcapLibrary          /**/
-+#define HasBSD44Sockets         YES
-+#define HAS_SNPRINTF            YES
-+#endif
-+
-+#define NeedConstPrototypes     YES
-+#define NeedVarargsPrototypes   YES
-+#define NeedFunctionPrototypes  YES
-+#define NeedWidePrototypes      NO
-+
-+#define GzipFontCompression     YES
-+#define CompressAllFonts        YES
-+
-+#ifndef HasShm
-+# define HasShm			YES
-+#endif
-+#ifndef BuildGlxExt
-+# define BuildGlxExt 	  	YES
-+# define GlxUseNSGL             YES
-+#endif
-+#define BuildServer             YES
-+#define BuildXprint             NO
-+#define BuildFonts              YES
-+#define BuildDPMS               NO
-+
-+#define TenonServer             YES
-+#define XprtServer              NO
-+#define XVendorString "Tenon Intersystems Xtools"
-+#define XVendorRelease 1000
-+#ifndef UseRgbTxt
-+#define UseRgbTxt               YES
-+#endif
-+
-+#define BuildPexExt             NO
-+
-+#ifndef BuildGLXLibrary
-+# define BuildGLXLibrary	YES
-+#endif
-+
-+/* no direct graphics extension */
-+#define	BuildXF86DGA	NO
-+
-+/* no extra tablets and weird input devices */
-+#define BuildXInputExt	NO
-+
-+/* Build Xinerama (aka panoramiX) extension */
-+#define BuildXinerama		YES
-+
-+/* no Display Power Management extension */
-+#define	BuildDPMSExt	NO
-+
-+# define BuildXvExt     NO
+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 -fPIC -pipe
-+#define ExtraLoadFlags -L/usr/X11R6/lib -L/sw/lib -L/usr/lib -lc
-+
-+#define BuildExamples YES
-+
-+#define StandardDefines -DCERNLIB_LINUX -DCERNLIB_PPC -DCERNLIB_MACOSX \
-+			-Dunix=unix -D__powerpc__ -D__DARWIN__
-+/* -DX_NOT_POSIX -DX_LOCALE */
-+
-+#define HasVoidSignalReturn YES
-+
-+#ifndef DependFlags
++#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
-+
+ #endif
+ 
 +#define StandardIncludes -I/sw/include
 +
-+#define InstallCmd	install	/* unlink old */
-+
-+/* #define ArCmd libtool -a -o */
-+#define ArCmd ar -r
-+
-+#ifndef RanlibCmd
-+#define RanlibCmd	ranlib -c -s
-+#endif
-+
-+/* see below for ServerDefines */
-+
-+#define PrimaryScreenResolution 95	/* for 17 inch screen */
-+
-+#define ServerCDebugFlags OptimizationLevel -fPIC -g -pipe
-+
-+#ifndef HasGcc
-+#define HasGcc YES
-+#endif
-+
-+#undef CcCmd
-+#undef CplusplusCmd
-+#ifdef MacOSXArchitecture
-+#define CcCmd		cc -g -arch "ppc" -no-cpp-precomp
-+#define CplusplusCmd    c++ -g -no-cpp-precomp
-+#endif
-+#ifndef CcCmd
+ #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
-+
-+#include <MacOSX.rules>
-+#include <xf86.rules>
-+#undef XFree86Server
-+/* #define GLX_DIRECT_RENDERING */
-+
-+#define f2cFortran              YES
-+#define FortranCmd              g77 -g
-+#define XargsCmd                xargs
-+#define FortranSaveFlags        /* */ /* Everything static !? */
-+#define OptimisedFortranFlags	OptimizationLevel -fPIC -funroll-loops \
-+				-fomit-frame-pointer
-+#define DefaultCCOptions	OptimizationLevel
-+#define DefaultFCOptions        -fno-automatic \
-+				-fno-second-underscore \
-+				-fno-f90 -fugly-complex -fno-globals \
-+				-fugly-init -Wno-globals OptimizationLevel
-+
+ #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 CernlibLocalDefines
-+
-+#undef CERNLIB_SHIFT
-+
-+#define CERNLIB_LINUX
-+#define CERNLIB_UNIX
-+#define CERNLIB_LNX
-+#define CERNLIB_PPC
-+#define CERNLIB_QMGLIBC
-+#define CERNLIB_MACOSX
-+
-+#define X11Includes             -I/usr/X11R6/include
-+
-+/*
-+ *  Create a Make Variable to allow building with/out Motif
-+ */
-+#undef MotifDependantMakeVar
-+#define MotifDependantMakeVar(variable,value) variable=value
-+/* End  CERNLIB changes */
-+
-+
-diff -urNad cernlib-2005.05.09.dfsg~/src/config/MacOSX.rules cernlib-2005.05.09.dfsg/src/config/MacOSX.rules
---- cernlib-2005.05.09.dfsg~/src/config/MacOSX.rules	1969-12-31 19:00:00.000000000 -0500
-+++ cernlib-2005.05.09.dfsg/src/config/MacOSX.rules	2005-12-07 14:47:34.140148771 -0500
-@@ -0,0 +1,123 @@
-+XCOMM $XConsortium: MOSXS.rules,v 1.1 97/12/12 15:34:45 sl Exp $
-+
-+/*
-+ * MacOSX shared library rules
-+ */
-+
-+#define HasSharedLibraries YES
-+
-+#define ForceNormalLib NO
-+
-+#ifndef SharedDataSeparation
-+#define SharedDataSeparation YES
-+#endif
-+#ifndef SharedCodeDef
-+#define SharedCodeDef
-+#endif
-+#ifndef SharedLibraryDef
-+#define SharedLibraryDef -fno-common
-+#endif
-+
-+#define ShLibIncludeFile <MacOSX.tmpl>
-+
-+#ifndef SharedLibraryLoadFlags
-+#define SharedLibraryLoadFlags
-+#endif
-+#ifndef PositionIndependentCFlags
-+#define PositionIndependentCFlags
-+#endif
-+
-+
-+/*
-+ * InstallSharedLibrary - generate rules to install the shared library.
++				-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)				@@\
+  */
+ #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)						@@\
+ 	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 */
-+
-+/*
-+ * NormalSharedLibraryTarget - generate rules to create a shared library;
-+ * build it into a different name so that the we do not hose people by having
-+ * the library gone for long periods.
-+ */
-+#ifndef SharedLibraryTarget
-+#define SharedLibraryTarget(libname,rev,solist,down,up)			@@\
-+AllTarget(Concat(lib,libname.dylib))					@@\
-+									@@\
-+Concat(lib,libname.dylib):  solist $(EXTRALIBRARYDEPS)			@@\
-+	$(RM) $@~							@@\
-+	(cd down; $(CC) -I/usr/X11R6/lib -dynamiclib -undefined suppress -install_name /usr/X11R6/lib/$@ -o up/$@~ $(SHLIBLDFLAGS) solist $(REQUIREDLIBS)) @@\
-+	$(MV) $@~ $@							@@\
-+	LinkBuildLibrary($@)						@@\
-+									@@\
-+clean::									@@\
-+	$(RM) Concat(lib,libname.dylib)
-+
-+#endif /* SharedLibraryTarget */
-+
-+/*
-+ * SharedDepLibraryTarget - generate rules to create a shared library.
-+ */
-+#ifndef SharedDepLibraryTarget
-+#define SharedDepLibraryTarget(libname,rev,deplist,solist,down,up)	@@\
-+AllTarget(Concat(lib,libname.dylib))					@@\
-+									@@\
-+Concat(lib,libname.dylib):  deplist $(EXTRALIBRARYDEPS)		@@\
-+	$(RM) $@~							@@\
-+	(cd down; $(CC) -I/usr/X11R6/lib -dynamiclib -undefined suppress -install_name /usr/X11R6/lib/$@ -o up/$@~ $(SHLIBLDFLAGS) solist $(REQUIREDLIBS)) @@\
-+	$(RM) $@							@@\
-+	$(MV) $@~ $@							@@\
-+	LinkBuildLibrary($@)						@@\
-+									@@\
-+clean::									@@\
-+	$(RM) Concat(lib,libname.dylib)
-+
-+#endif /* SharedDepLibraryTarget */
-+
-+/*
-+ * SharedLibraryDataTarget - generate rules to create shlib data file;
-+ */
-+#ifndef SharedLibraryDataTarget
-+#define SharedLibraryDataTarget(libname,rev,salist)
-+#endif /* SharedLibraryDataTarget */
-+
-+#ifndef InstallSharedLibraryData
-+#define InstallSharedLibraryData(libname,rev,dest)
-+#endif /* InstallSharedLibraryData */
-+
-+/*
-+ * SharedLibReferences - variables for shared libraries
-+ */
-+#ifndef SharedLibReferences
-+#define SharedLibReferences(varname,libname,libsource,revname,rev)	@@\
-+revname = rev								@@\
-+Concat3(DEP,varname,LIB) = SharedLibDependencies(libname,libsource,revname) @@\
-+Concat(varname,LIB) = LoaderLibPrefix Concat(-l,libname)		@@\
-+LintLibReferences(varname,libname,libsource)
-+#endif
-+
-+/*
-+ * SharedDSLibReferences - variables for shared libraries
-+ */
-+#ifndef SharedDSLibReferences
-+#define SharedDSLibReferences(varname,libname,libsource,revname,rev)	@@\
-+revname = rev								@@\
-+Concat3(DEP,varname,LIB) = SharedDSLibDependencies(libname,libsource,revname) @@\
-+Concat(varname,LIB) = LoaderLibPrefix Concat(-l,libname) Concat3(Shared,libname,Reqs)		@@\
-+LintLibReferences(varname,libname,libsource)
-+#endif
-+
-+
-diff -urNad cernlib-2005.05.09.dfsg~/src/config/MacOSX.tmpl cernlib-2005.05.09.dfsg/src/config/MacOSX.tmpl
---- cernlib-2005.05.09.dfsg~/src/config/MacOSX.tmpl	1969-12-31 19:00:00.000000000 -0500
-+++ cernlib-2005.05.09.dfsg/src/config/MacOSX.tmpl	2005-12-07 14:47:34.140148771 -0500
-@@ -0,0 +1,67 @@
-+XCOMM $XConsortium: MOSXS.tmpl,v 1.2 97/12/12 19:07:12 sl Exp $
-+
-+/*
-+ * Xnext shared library template
-+ */
-+
-+
-+
-+#ifndef SharedXtReqs
-+#define SharedXtReqs /**/
-+#endif
-+#ifndef SharedXawReqs
-+#define SharedXawReqs /**/
-+#endif
-+#ifndef SharedXmuReqs
-+#define SharedXmuReqs $(LDPRELIB) $(XTOOLONLYLIB) $(XONLYLIB)
-+#endif
-+
-+#define SharedLibX11 YES
-+#define SharedX11Rev F
-+SharedLibReferences(XONLY,X11,$(XLIBSRC),SOXLIBREV,SharedX11Rev)
-+
-+#define SharedLibXau NO		/* don't need shared form */
-+#define SharedLibXdmcp NO	/* don't need shared form */
-+
-+#define SharedLibXmu YES
-+#define SharedXmuRev F
-+
-+#define SharedOldXRev F
-+
-+#define SharedLibXext YES
-+#define SharedXextRev F
-+
-+#define SharedLibXt YES
-+#define SharedXtRev F
-+SharedDSLibReferences(XTOOLONLY,Xt,$(TOOLKITSRC),SOXTREV,SharedXtRev)
-+
-+#define SharedXawRev F
-+
-+#define SharedXtfRev A
-+
-+#define SharedLibXi YES
-+#define SharedXiRev F
-+SharedLibReferences(XI,Xi,$(XILIBSRC),SOXINPUTREV,SharedXiRev)
-+
-+#define SharedLibXtst YES
-+#define SharedXtstRev F
-+SharedLibReferences(XTEST,Xtst,$(XTESTLIBSRC),SOXTESTREV,SharedXtstRev)
-+
-+
-+#define SharedPexRev F
-+SharedLibReferences(PEX,PEX5,$(PEXLIBSRC),SOPEXREV,SharedPexRev)
-+
-+#define SharedLibXie YES
-+#define SharedXieRev F
-+
-+#define SharedLibICE YES
-+#define SharedICERev F
-+SharedLibReferences(ICE,ICE,$(ICESRC),SOICEREV,SharedICERev)
-+
-+#define SharedLibSM YES
-+#define SharedSMRev F
-+SharedLibReferences(SM,SM,$(SMSRC),SOSMREV,SharedSMRev)
-+
-+#define SharedFSRev F
-+SharedLibReferences(FS,FS,$(FSLIBSRC),SOFSREV,SharedFSRev)
-+
-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	2005-12-07 14:47:34.140148771 -0500
+ #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
@@ -441,36 +196,6 @@
  
  install.lib:: $(CERN_LIBDIR)/gxint.f
  
-diff -urNad cernlib-2005.05.09.dfsg~/src/mathlib/gen/tests/c327m.F cernlib-2005.05.09.dfsg/src/mathlib/gen/tests/c327m.F
---- cernlib-2005.05.09.dfsg~/src/mathlib/gen/tests/c327m.F	1996-04-01 10:01:17.000000000 -0500
-+++ cernlib-2005.05.09.dfsg/src/mathlib/gen/tests/c327m.F	2005-12-07 14:47:34.141148558 -0500
-@@ -92,7 +92,11 @@
- #endif
-       ENDIF
-       WRITE(Z,'(2D26.16)') H,T
-+#if defined(CERNLIB_MACOSX)
-+      READ(Z,'(2(4X,D22.16))') H1,T1
-+#else
-       READ(Z,'(2(D22.16,4X))') H1,T1
-+#endif
-        IF(IDS .EQ. 1) THEN
-       ERRMAX=MAX(ERRMAX,ABS(H1-T1))
-       LTEST= LTEST .AND. ERRMAX .LE.  TSTERR
-diff -urNad cernlib-2005.05.09.dfsg~/src/mathlib/gen/tests/c342m.F cernlib-2005.05.09.dfsg/src/mathlib/gen/tests/c342m.F
---- cernlib-2005.05.09.dfsg~/src/mathlib/gen/tests/c342m.F	1996-04-01 10:01:19.000000000 -0500
-+++ cernlib-2005.05.09.dfsg/src/mathlib/gen/tests/c342m.F	2005-12-07 14:47:34.141148558 -0500
-@@ -70,7 +70,11 @@
- #endif
-       END IF
-       WRITE(Z,'(2D26.16)') R,T
-+#if defined(CERNLIB_MACOSX)
-+      READ(Z,'(2(4X,D22.16))') R1,T1
-+#else
-       READ(Z,'(2(D22.16,4X))') R1,T1
-+#endif
-       ERMAX= MAX(ERMAX,ABS(R1-T1))
-       IF(IDS .EQ. 3 .OR. IDS .EQ. 4) THEN
-        WRITE(LOUT,'(1X,F10.3,2F25.16,1P,D10.1)') SX,R,T,ABS(R1-T1)
 diff -urNad cernlib-2005.05.09.dfsg~/src/mclibs/cojets/data/Imakefile cernlib-2005.05.09.dfsg/src/mclibs/cojets/data/Imakefile
 --- cernlib-2005.05.09.dfsg~/src/mclibs/cojets/data/Imakefile	1996-03-27 04:31:06.000000000 -0500
 +++ cernlib-2005.05.09.dfsg/src/mclibs/cojets/data/Imakefile	2005-12-07 14:47:34.141148558 -0500
@@ -503,255 +228,3 @@
  
  PackageDirFileTarget(isajet.dat)
  
-diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/cspack/sysreq/log.c cernlib-2005.05.09.dfsg/src/packlib/cspack/sysreq/log.c
---- cernlib-2005.05.09.dfsg~/src/packlib/cspack/sysreq/log.c	2003-09-02 08:47:16.000000000 -0400
-+++ cernlib-2005.05.09.dfsg/src/packlib/cspack/sysreq/log.c	2005-12-07 14:47:34.142148345 -0500
-@@ -80,7 +80,7 @@
- static int pid;                 /* process identifier                   */
- static int logfd ;              /* logging file descriptor              */
- #if !defined(SOLARIS) && !defined(linux) && !defined(_AIX) \
--  && !defined(IRIX5) && !defined(apollo)
-+  && !defined(IRIX5) && !defined(apollo) && !defined(__DARWIN__)
- extern int syslog();
- #endif /* !SOLARIS && !IRIX5 && !apollo && !linux && !AIX */
- extern char *getenv();
-diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/cspack/tcpaw/tcpaw.c cernlib-2005.05.09.dfsg/src/packlib/cspack/tcpaw/tcpaw.c
---- cernlib-2005.05.09.dfsg~/src/packlib/cspack/tcpaw/tcpaw.c	2005-12-07 14:47:25.920897902 -0500
-+++ cernlib-2005.05.09.dfsg/src/packlib/cspack/tcpaw/tcpaw.c	2005-12-07 14:47:34.146147494 -0500
-@@ -2569,7 +2569,7 @@
- #if !defined(IBM) && !defined(_WIN32)
- /* I provide "getpass" myself as standard version truncates to 8 characters */
- #include <sys/ioctl.h>
--#ifdef CBREAK
-+#if defined(CBREAK) || defined(CERNLIB_MACOSX)
- #define BSDTTY         /* First find out if BSD or SYSV terminal handling.. */
- #endif
-  
-@@ -2577,6 +2577,10 @@
- #include <termio.h>
- #else
- #include <sgtty.h>
-+# if defined(CERNLIB_MACOSX)
-+# define gtty(x,y) ioctl(x,TIOCGETP,y)
-+# define stty(x,y) ioctl(x,TIOCSETP,y)
-+# endif
- #endif
-  
- /* Fails with gcc 3.4.3
-@@ -3540,3 +3544,20 @@
-  
- }
- #endif
-+
-+#if defined(CERNLIB_MACOSX)
-+  /* need to define cuserid() for OS X */
-+
-+char * getlogin();
-+
-+char *
-+cuserid(char *string)
-+{
-+  static char cuserid_str[L_cuserid];
-+  char *result = (string ? string : cuserid_str);
-+  
-+  strncpy(result, getlogin(), L_cuserid - 1);
-+  result[L_cuserid - 1] = '\0';
-+  return result;
-+}
-+#endif /* CERNLIB_MACOSX */
-diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernbit/z268/systems.c cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernbit/z268/systems.c
---- cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernbit/z268/systems.c	1998-08-25 08:45:56.000000000 -0400
-+++ cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernbit/z268/systems.c	2005-12-07 14:47:34.146147494 -0500
-@@ -200,7 +200,7 @@
- || defined(_IBMR2) \
- || defined(__convexc__) \
- || defined(_OSK) \
--|| defined(__linux) || defined(__FreeBSD__)
-+|| defined(__linux) || defined(__FreeBSD__) || defined(__DARWIN__)
- 
-   void systems_( command, buf, buflen, l, chars, rc, ovflw )
- 
-diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernnum/d704fort/Imakefile cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernnum/d704fort/Imakefile
---- cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernnum/d704fort/Imakefile	1996-06-12 06:03:53.000000000 -0400
-+++ cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernnum/d704fort/Imakefile	2005-12-07 14:47:34.146147494 -0500
-@@ -4,6 +4,10 @@
- FDEBUGFLAGS=NoOpFortranDebugFlags
- #endif
- 
-+#if defined(CERNLIB_MACOSX)
-+FDEBUGFLAGS=-O0 -fPIC
-+#endif
-+
- FORTRANSAVEOPTION=FortranSaveFlags
- 
- SubdirLibraryTarget(NullParameter,NullParameter)
-diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernnum/f002fort/Imakefile cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernnum/f002fort/Imakefile
---- cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernnum/f002fort/Imakefile	1996-06-12 06:04:09.000000000 -0400
-+++ cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernnum/f002fort/Imakefile	2005-12-07 14:47:34.146147494 -0500
-@@ -10,6 +10,10 @@
- FDEBUGFLAGS=NoOpFortranDebugFlags
- #endif
- 
-+#if defined(CERNLIB_MACOSX)
-+FDEBUGFLAGS=-O0 -fPIC
-+#endif
-+
- FORTRANSAVEOPTION=FortranSaveFlags
- 
- SubdirLibraryTarget(NullParameter,NullParameter)
-diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernnum/f003fort/Imakefile cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernnum/f003fort/Imakefile
---- cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernnum/f003fort/Imakefile	1996-06-12 06:04:12.000000000 -0400
-+++ cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernnum/f003fort/Imakefile	2005-12-07 14:47:34.147147281 -0500
-@@ -11,6 +11,10 @@
- FDEBUGFLAGS=NoOpFortranDebugFlags
- #endif
- 
-+#if defined(CERNLIB_MACOSX)
-+FDEBUGFLAGS=-O0 -fPIC
-+#endif
-+
- FORTRANSAVEOPTION=FortranSaveFlags
- 
- SubdirLibraryTarget(NullParameter,NullParameter)
-diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernnum/f004fort/Imakefile cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernnum/f004fort/Imakefile
---- cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernnum/f004fort/Imakefile	1996-06-12 06:04:16.000000000 -0400
-+++ cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernnum/f004fort/Imakefile	2005-12-07 14:47:34.147147281 -0500
-@@ -6,6 +6,10 @@
- FDEBUGFLAGS=NoOpFortranDebugFlags
- #endif
- 
-+#if defined(CERNLIB_MACOSX)
-+FDEBUGFLAGS=-O0 -fPIC
-+#endif
-+
- FORTRANSAVEOPTION=FortranSaveFlags
- 
- SubdirLibraryTarget(NullParameter,NullParameter)
-diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernnum/f010fort/Imakefile cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernnum/f010fort/Imakefile
---- cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernnum/f010fort/Imakefile	1996-06-12 06:04:19.000000000 -0400
-+++ cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernnum/f010fort/Imakefile	2005-12-07 14:47:34.147147281 -0500
-@@ -7,6 +7,10 @@
- FDEBUGFLAGS=NoOpFortranDebugFlags
- #endif
- 
-+#if defined(CERNLIB_MACOSX)
-+FDEBUGFLAGS=-O0 -fPIC
-+#endif
-+
- FORTRANSAVEOPTION=FortranSaveFlags
- 	 
- 
-diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernnum/f011fort/Imakefile cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernnum/f011fort/Imakefile
---- cernlib-2005.05.09.dfsg~/src/packlib/kernlib/kernnum/f011fort/Imakefile	1996-06-12 06:04:24.000000000 -0400
-+++ cernlib-2005.05.09.dfsg/src/packlib/kernlib/kernnum/f011fort/Imakefile	2005-12-07 14:47:34.147147281 -0500
-@@ -7,6 +7,10 @@
- FDEBUGFLAGS=NoOpFortranDebugFlags
- #endif
- 
-+#if defined(CERNLIB_MACOSX)
-+FDEBUGFLAGS=-O0 -fPIC
-+#endif
-+
- FORTRANSAVEOPTION=FortranSaveFlags
- 
- SubdirLibraryTarget(NullParameter,NullParameter)
-diff -urNad cernlib-2005.05.09.dfsg~/src/packlib/kuip/kuip/ksys.h cernlib-2005.05.09.dfsg/src/packlib/kuip/kuip/ksys.h
---- cernlib-2005.05.09.dfsg~/src/packlib/kuip/kuip/ksys.h	1997-09-02 10:50:01.000000000 -0400
-+++ cernlib-2005.05.09.dfsg/src/packlib/kuip/kuip/ksys.h	2005-12-07 14:47:34.147147281 -0500
-@@ -188,6 +188,17 @@
- #endif
- 
- 
-+#ifdef CERNLIB_MACOSX
-+#  define MACOSX
-+#  define MACHINE_NAME "MACOSX"
-+#  define UNIX
-+#  define HAVE_MEMMOVE
-+#  define HAVE_STRCASECMP
-+#  define HAVE_SELECT
-+#  define MATCH_REGCOMP         /* use regcomp/regexec */
-+#endif
-+
-+
- #ifdef MSDOS
- #  define MACHINE_NAME "IBMPC"
- #  define OS_NAME "MSDOS"
-diff -urNad cernlib-2005.05.09.dfsg~/src/pawlib/comis/code/csaddr.F cernlib-2005.05.09.dfsg/src/pawlib/comis/code/csaddr.F
---- cernlib-2005.05.09.dfsg~/src/pawlib/comis/code/csaddr.F	2005-12-07 14:47:25.807921944 -0500
-+++ cernlib-2005.05.09.dfsg/src/pawlib/comis/code/csaddr.F	2005-12-07 14:55:23.810167859 -0500
-@@ -38,7 +38,12 @@
-             IFCS=-2
-             CALL CSRTGPL(I)
- #else
-+c     thanks to Keisuke Fujii for this patch for OS X            
-+#if defined (CERNLIB_MACOSX)
-+          IADGP=CS_GET_FUNC('_'//NAME(1:NC)//'_')
-+#else
-           IADGP=CS_GET_FUNC(NAME(1:NC)//'_')
-+#endif
-           IF(IADGP.NE.0)THEN
-             IFCS=-2
-             CALL CSRTGP(I)
-@@ -58,7 +63,11 @@
-           I=CSITGPL(IPVS)
-         ENDIF
- #else
-+#if defined (CERNLIB_MACOSX)
-+        IADGP=CS_GET_FUNC('_'//NAME(1:NC)//'_')
-+#else
-         IADGP=CS_GET_FUNC(NAME(1:NC)//'_')
-+#endif
-         IF(IADGP.NE.0)THEN
-           IFCS=-2
-           ITYPGP=-2
-diff -urNad cernlib-2005.05.09.dfsg~/src/pawlib/comis/code/cscrexec.F cernlib-2005.05.09.dfsg/src/pawlib/comis/code/cscrexec.F
---- cernlib-2005.05.09.dfsg~/src/pawlib/comis/code/cscrexec.F	2005-12-07 14:47:25.687947476 -0500
-+++ cernlib-2005.05.09.dfsg/src/pawlib/comis/code/cscrexec.F	2005-12-07 14:47:34.148147068 -0500
-@@ -82,11 +82,19 @@
-       IF(FEXT.EQ.'.c')THEN
-         L=LENOCC(CHCC)
- *                                 'cc -c .... -fPIC name.c'
-+#if defined(CERNLIB_MACOSX)
-+        CHLINE=CHCC(:L)//' -fPIC -fno-common '//NAME(:LN)// '.c'
-+#else
-         CHLINE=CHCC(:L)//' -fPIC '//NAME(:LN)// '.c'
-+#endif
-       ELSE
-         L=LENOCC(CHF77)
- *                                 'f77 -c .... -fPIC name.f'
-+#if defined(CERNLIB_MACOSX)
-+        CHLINE=CHF77(:L)//' -fPIC -fno-common '//NAME(:LN)// '.f'
-+#else
-         CHLINE=CHF77(:L)//' -fPIC '//NAME(:LN)// '.f'
-+#endif
-       ENDIF
-       L=LENOCC(CHLINE)
-       WRITE(LUNOUT,'(A)')CHLINE(:L)
-@@ -176,8 +184,15 @@
-       ENDIF
- #endif
- #if defined(CERNLIB_LINUX)
-+# if defined(CERNLIB_MACOSX)
-+      CHLINE= 'g77 -bundle -bind_at_load -bundle_loader '
-+     +        '`/usr/bin/which pawX11` -o '
-+     +                    // NAME(:LN) //'.sl '// NAME(:LN) //'.o'
-+C     thanks to Keisuke Fujii for the above compiler command      
-+# else
-       CHLINE=                   'g77 -shared -o '
-      +                    // NAME(:LN) //'.sl '// NAME(:LN) //'.o'
-+# endif
- #endif
- #if defined(CERNLIB_ALPHA_OSF)
-         CHLINE=                   'ld -shared -o '
-diff -urNad cernlib-2005.05.09.dfsg~/src/pawlib/paw/programs/Imakefile cernlib-2005.05.09.dfsg/src/pawlib/paw/programs/Imakefile
---- cernlib-2005.05.09.dfsg~/src/pawlib/paw/programs/Imakefile	2002-04-25 06:20:11.000000000 -0400
-+++ cernlib-2005.05.09.dfsg/src/pawlib/paw/programs/Imakefile	2005-12-07 14:47:34.148147068 -0500
-@@ -9,7 +9,7 @@
- EXTRA_LDOPTIONS=-Wl,-E
- #endif
- 
--#if defined(CERNLIB_LINUX)
-+#if defined(CERNLIB_LINUX) && !defined(CERNLIB_MACOSX)
- EXTRA_LDOPTIONS=-Wl,-E
- #endif
- 


Index: cernlib-115-rsrtnt64-goto-outer-block.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/cernlib-115-rsrtnt64-goto-outer-block.dpatch,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- cernlib-115-rsrtnt64-goto-outer-block.dpatch	11 Sep 2006 22:32:35 -0000	1.2
+++ cernlib-115-rsrtnt64-goto-outer-block.dpatch	21 Apr 2007 14:35:24 -0000	1.3
@@ -2,16 +2,16 @@
 ## 115-rsrtnt64-goto-outer-block.dpatch by  <kmccarty at debian.org>
 ##
 ## All lines beginning with `## DP:' are a description of the patch.
-## DP: Patch from Patrice Dumas <pertusus at free.fr> to fix spaghetti code in
-## DP: rsrtnt64.F that breaks linking step on Itanium.
+## 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-2005.dfsg~/src/mathlib/gen/b/rsrtnt64.F cernlib-2005.dfsg/src/mathlib/gen/b/rsrtnt64.F
---- cernlib-2005.dfsg~/src/mathlib/gen/b/rsrtnt64.F	1996-04-01 10:01:51.000000000 -0500
-+++ cernlib-2005.dfsg/src/mathlib/gen/b/rsrtnt64.F	2006-09-06 14:12:38.087369193 -0400
-@@ -53,7 +53,7 @@
+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
@@ -20,27 +20,16 @@
        IF(.NOT.LLL) GO TO 9
  
        DELTA=4*A*C-B**2
-@@ -117,9 +117,16 @@
+@@ -120,7 +120,7 @@
          ENDIF
         ELSE
          IF(N .EQ. 1) THEN
--         ASSIGN 11 TO JMP1
--         GO TO 10
--   11    IF(K .EQ. 0) THEN
-+      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)/
-+     &           (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
-+       H=(ASIN((C2*U+B)/RTD)-ASIN((C2*V+B)/RTD))/SQRT(-C)
-+      ENDIF
-+         IF(K .EQ. 0) THEN
-           H=H
-          ELSEIF(K .EQ. 1) THEN
-           H=(RT(V)-RT(U)-HF*B*H)/C
-@@ -134,7 +141,7 @@
+-#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)-
@@ -49,41 +38,25 @@
           ENDIF
          ELSE
           IF(DELTA .EQ. 0) THEN
-@@ -174,21 +181,35 @@
+@@ -181,7 +181,7 @@
             H=2*((H1+B*U)/RT(U)-(H1+B*V)/RT(V))/DELTA
             LB1=11
            ELSEIF(K .EQ. 2) THEN
--           ASSIGN 12 TO JMP1
--           GO TO 10
--   12      H1=DELTA-B**2
-+      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)/
-+     &           (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
-+       H=(ASIN((C2*U+B)/RTD)-ASIN((C2*V+B)/RTD))/SQRT(-C)
-+      ENDIF
-+           H1=DELTA-B**2
+-#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
--           ASSIGN 13 TO JMP1
--           GO TO 10
--   13      H1=C*DELTA
-+      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)/
-+     &           (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
-+       H=(ASIN((C2*U+B)/RTD)-ASIN((C2*V+B)/RTD))/SQRT(-C)
-+      ENDIF
-+           H1=C*DELTA
-            G1=A*C
-            G2=3*B**2
+-#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))/
@@ -92,44 +65,16 @@
            ENDIF
           ENDIF
          ENDIF
-@@ -217,9 +238,33 @@
+@@ -232,7 +232,7 @@
          ENDIF
         ELSE
          IF(N .EQ. 1) THEN
--         ASSIGN 21 TO JMP2
--         GO TO 20
--   21    IF(K .EQ. -1) THEN
-+      IF(C .EQ. 0) THEN
-+       IF(B .EQ. 0) THEN
-+        H=LOG(ABS(V/U))/SQRT(A)
-+       ELSE
-+        IF(A .LT. 0) THEN
-+         H=2*(ATAN(SQRT(-(A+B*V)/A))-ATAN(SQRT(-(A+B*U)/A)))/SQRT(-A)
-+        ELSE
-+         WA=SQRT(A)
-+         WU=SQRT(A+B*U)
-+         WV=SQRT(A+B*V)
-+         H=LOG(ABS((WV-WA)*(WU+WA)/((WV+WA)*(WU-WA))))/WA
-+        ENDIF
-+       ENDIF
-+      ELSE
-+       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/
-+     &           ((-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)
-+       ELSE
-+        H=(ASIN((B*V+A2)/(V*RTD))-ASIN((B*U+A2)/(U*RTD)))/SQRT(-A)
-+        IF(U .LT. 0 .AND. V .LT. 0) H=-H
-+       ENDIF
-+      ENDIF
-+         IF(K .EQ. -1) THEN
-           H=H
-          ELSEIF(K .EQ. -2) THEN
-           H=(RT(U)/U-RT(V)/V-HF*B*H)/A
-@@ -227,7 +272,7 @@
+-#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+
@@ -138,44 +83,16 @@
           ENDIF
          ELSE
           IF(DELTA .EQ. 0) THEN
-@@ -257,9 +302,33 @@
+@@ -276,7 +276,7 @@
             IF(U. LT. -X0) H=-H
            ENDIF
           ELSE
--          ASSIGN 22 TO JMP2
--          GO TO 20
--   22     IF(K .EQ. -1) THEN
-+      IF(C .EQ. 0) THEN
-+       IF(B .EQ. 0) THEN
-+        H=LOG(ABS(V/U))/SQRT(A)
-+       ELSE
-+        IF(A .LT. 0) THEN
-+         H=2*(ATAN(SQRT(-(A+B*V)/A))-ATAN(SQRT(-(A+B*U)/A)))/SQRT(-A)
-+        ELSE
-+         WA=SQRT(A)
-+         WU=SQRT(A+B*U)
-+         WV=SQRT(A+B*V)
-+         H=LOG(ABS((WV-WA)*(WU+WA)/((WV+WA)*(WU-WA))))/WA
-+        ENDIF
-+       ENDIF
-+      ELSE
-+       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/
-+     &           ((-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)
-+       ELSE
-+        H=(ASIN((B*V+A2)/(V*RTD))-ASIN((B*U+A2)/(U*RTD)))/SQRT(-A)
-+        IF(U .LT. 0 .AND. V .LT. 0) H=-H
-+       ENDIF
-+      ENDIF
-+          IF(K .EQ. -1) THEN
-            H1=B*C
-            H2=B**2-2*A*C
-            H=(2*((H1*U+H2)/RT(U)-(H1*V+H2)/RT(V))/DELTA+H)/A
-@@ -270,7 +339,7 @@
+-#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
@@ -184,7 +101,7 @@
            ELSEIF(K .EQ. -3) THEN
             G1=A*DELTA
             G2=A*C
-@@ -281,52 +350,13 @@
+@@ -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))
@@ -195,46 +112,24 @@
          ENDIF
         ENDIF
        ENDIF
--      GO TO 9
+-#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)/
+    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)
--      ELSEIF(DELTA .EQ. 0) THEN
--       H=ABS(LOG(ABS((C2*V+B)/(C2*U+B))))/SQRT(C)
--      ELSE
--       H=(ASIN((C2*U+B)/RTD)-ASIN((C2*V+B)/RTD))/SQRT(-C)
--      ENDIF
--      GO TO JMP1, (11,12,13)
--
--   20 IF(C .EQ. 0) THEN
--       IF(B .EQ. 0) THEN
--        H=LOG(ABS(V/U))/SQRT(A)
--       ELSE
--        IF(A .LT. 0) THEN
--         H=2*(ATAN(SQRT(-(A+B*V)/A))-ATAN(SQRT(-(A+B*U)/A)))/SQRT(-A)
--        ELSE
--         WA=SQRT(A)
--         WU=SQRT(A+B*U)
--         WV=SQRT(A+B*V)
--         H=LOG(ABS((WV-WA)*(WU+WA)/((WV+WA)*(WU-WA))))/WA
--        ENDIF
--       ENDIF
--      ELSE
--       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/
++     &           (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)
--       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)
--       ELSE
--        H=(ASIN((B*V+A2)/(V*RTD))-ASIN((B*U+A2)/(U*RTD)))/SQRT(-A)
--        IF(U .LT. 0 .AND. V .LT. 0) H=-H
--       ENDIF
--      ENDIF
--      GO TO JMP2, (21,22)
- 
-     9 RES=SIGN(R1,V1-U1)*H
-       LRL=LLL
++     &           ((-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)


Index: cernlib-202-fix-includes-in-minuit-example.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/cernlib-202-fix-includes-in-minuit-example.dpatch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- cernlib-202-fix-includes-in-minuit-example.dpatch	1 Sep 2006 13:15:22 -0000	1.1
+++ cernlib-202-fix-includes-in-minuit-example.dpatch	21 Apr 2007 14:35:24 -0000	1.2
@@ -9,8 +9,8 @@
 --- cernlib-2005.05.09/src/cfortran/Examples/minuit-main.c	2001-04-18 04:56:22.000000000 -0400
 +++ /tmp/dpep.SuauEf/cernlib-2005.05.09/src/cfortran/Examples/minuit-main.c	2005-06-09 13:22:59.567224997 -0400
 @@ -15,8 +15,8 @@
- #define FCN fcn
- #endif
+  *          Gunter Folger <Gunter.Folger at cern.ch>
+  */
  
 -#include "cfortran.h"
 -#include "minuit.h"


Index: cernlib-211-support-digital-alpha.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/cernlib-211-support-digital-alpha.dpatch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- cernlib-211-support-digital-alpha.dpatch	11 Sep 2006 22:32:35 -0000	1.1
+++ cernlib-211-support-digital-alpha.dpatch	21 Apr 2007 14:35:24 -0000	1.2
@@ -30,5 +30,5 @@
 +#else  /* amd64 */
 +    if ( jadr != 0) {
  #endif
-       printf("!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n");
-       printf("LOCB/LOCF: address %p exceeds the 32 bit address space\n", iadr);
+       fprintf(stderr, "!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\n");
+       fprintf(stderr, "LOCB/LOCF: address %p exceeds the 32 bit address space\n", iadr);


Index: cernlib-304-update-Imake-config-files.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/cernlib-304-update-Imake-config-files.dpatch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- cernlib-304-update-Imake-config-files.dpatch	1 Sep 2006 13:15:22 -0000	1.1
+++ cernlib-304-update-Imake-config-files.dpatch	21 Apr 2007 14:35:24 -0000	1.2
@@ -7,17 +7,26 @@
 ## DP: to support most Linux architectures.
 
 @DPATCH@
-diff -urNad cernlib-2005.05.09.dfsg~/src/config/Imake.cf cernlib-2005.05.09.dfsg/src/config/Imake.cf
---- cernlib-2005.05.09.dfsg~/src/config/Imake.cf	2004-10-05 11:54:40.000000000 -0400
-+++ cernlib-2005.05.09.dfsg/src/config/Imake.cf	2005-12-12 09:42:08.529220732 -0500
-@@ -1,24 +1,10 @@
+diff -urNad cernlib-2006.dfsg~/src/config/Imake.cf cernlib-2006.dfsg/src/config/Imake.cf
+--- cernlib-2006.dfsg~/src/config/Imake.cf	2006-09-15 05:34:47.000000000 -0400
++++ cernlib-2006.dfsg/src/config/Imake.cf	2007-01-09 19:03:04.701920749 -0500
+@@ -1,27 +1,10 @@
 -/* $Id$
 - *
 - * $Log$
-- * Revision 1.1  2006/09/01 13:15:22  pertusus
-- * * Fri Sep  1 2006 Patrice Dumas <pertusus at free.fr> 2005-23
-- * - update to newer source split debian patchsets
-- * - don't set the exec bits on file installed in /etc/profile.d/
+- * Revision 1.2  2007/04/21 14:35:24  pertusus
+- * * Fri Apr 13 2007 Patrice Dumas <pertusus at free.fr> 2006-1
+- * - update to cernlib 2006
+- * - build with gfortran
+- * - use system Xbae and Xaw
+- * - ship man pages, app-defaults, icons and paw++ desktop file (from debian)
+- * - run tests
+- * - use optflags in patchy4
+- * - bootstrap npatchy with p5boot (instead of using patchy4)
+- * - fix npatchy build
+- *
+- * 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.
@@ -46,38 +55,11 @@
  /*
   * To add support for another platform:
   * 
-@@ -37,250 +23,448 @@
+@@ -40,184 +23,358 @@
   *
   *     4.  Create a .cf file with the name given by MacroFile.
   */
 +XCOMM $XFree86: xc/config/cf/Imake.cf,v 3.81 2003/02/18 16:51:45 tsi Exp $
- 
--#ifdef ultrix
--#define MacroIncludeFile <ultrix.cf>
--#define MacroFile ultrix.cf
--#ifdef vax
--#undef vax
--#define VaxArchitecture
--#endif
--#ifdef mips
--#undef mips
--#define MipsArchitecture
-+#if defined(__APPLE__)
-+# undef __APPLE__
-+# define MacroIncludeFile <MacOSX.cf>
-+# define MacroFile MacOSX.cf
-+# 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
@@ -99,8 +81,20 @@
 +#undef _X86_
 +#undef __CYGWIN__
 +#endif /* CYGWIN */
-+
-+#ifdef ultrix
+ 
+ #ifdef ultrix
+-#define MacroIncludeFile <ultrix.cf>
+-#define MacroFile ultrix.cf
+-#ifdef vax
+-#undef vax
+-#define VaxArchitecture
+-#endif
+-#ifdef mips
+-#undef mips
+-#define MipsArchitecture
+-#endif
+-#undef ultrix
+-#define UltrixArchitecture
 +# define MacroIncludeFile <ultrix.cf>
 +# define MacroFile ultrix.cf
 +# ifdef vax
@@ -553,6 +547,21 @@
 +# define MacIIArchitecture
  #endif /* macII */
  
+ #ifdef __APPLE__
+@@ -225,72 +382,89 @@
+ # define MacroFile MacOSX.cf
+ # define MacOSXArchitecture
+ # define DarwinArchitecture
++# ifdef __ppc__
++#  define PpcDarwinArchitecture
++#  undef __ppc__
++# endif
++# ifdef __i386__
++#  define i386DarwinArchitecture
++#  undef __i386__
++# endif
+ #endif
+ 
  #ifdef _CRAY
 -#define MacroIncludeFile <cray.cf>
 -#define MacroFile cray.cf
@@ -680,7 +689,7 @@
  #endif /* luna */
  
  #ifdef Mips
-@@ -307,9 +491,14 @@
+@@ -317,9 +491,14 @@
  # endif
  #endif /* MOTOROLA */
  
@@ -696,7 +705,7 @@
  # endif
  # define SVR4Architecture
  # define MacroIncludeFile <svr4.cf>
-@@ -319,13 +508,42 @@
+@@ -329,13 +508,42 @@
  
  #ifdef SYSV
  # ifdef i386
@@ -743,7 +752,7 @@
  # ifdef SVR4
  #  define i386Architecture
  #  define SVR4Architecture
-@@ -333,18 +551,46 @@
+@@ -343,18 +551,46 @@
  #  define MacroIncludeFile <svr4.cf>
  #  define MacroFile svr4.cf
  #  undef SVR4
@@ -799,7 +808,7 @@
  #endif /* DGUX */
  
  #ifdef __convex__
-@@ -356,101 +602,405 @@
+@@ -366,101 +602,405 @@
  # define ConvexArchitecture
  #endif /* _convex_ */
  
@@ -1272,10 +1281,10 @@
  
  #ifndef MacroIncludeFile
  XCOMM WARNING:  Imake.cf not configured; guessing at definitions!!!
-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	2004-10-05 11:56:45.000000000 -0400
-+++ cernlib-2005.05.09.dfsg/src/config/linux.cf	2005-12-12 09:42:42.505976387 -0500
-@@ -65,20 +65,20 @@
+diff -urNad cernlib-2006.dfsg~/src/config/linux.cf cernlib-2006.dfsg/src/config/linux.cf
+--- cernlib-2006.dfsg~/src/config/linux.cf	2006-09-15 05:34:48.000000000 -0400
++++ cernlib-2006.dfsg/src/config/linux.cf	2007-01-09 19:17:01.559270079 -0500
+@@ -68,20 +68,20 @@
  #define OSVendor		/**/
  #define OSMajorVersion		2
  #define OSMinorVersion		4
@@ -1300,7 +1309,7 @@
  #endif
  #define HasPutenv		YES
  #define HasShm			YES
-@@ -94,38 +94,302 @@
+@@ -97,38 +97,302 @@
  #define NeedVarargsPrototypes	YES
  #define NeedWidePrototypes	NO
  
@@ -1617,7 +1626,7 @@
  /* Some of these man page defaults are overriden in the above OS sections */
  #ifndef ManSuffix
  # define ManSuffix	1x
-@@ -160,7 +424,7 @@
+@@ -163,7 +427,7 @@
  #define FortranSaveFlags	/* */ /* Everything static !? */
  #define OptimisedFortranFlags   -g -pc 64 -tp p6
  #define DefaultFCOptions        -Msave -fpic -Kieee
@@ -1626,7 +1635,7 @@
  
  #else
  
-@@ -171,19 +435,18 @@
+@@ -174,19 +438,18 @@
  #  undef StandardDefines
  #  undef NeedFunctionPrototypes
  #  undef NeedWidePrototypes
@@ -1658,7 +1667,7 @@
   
  #else
  
-@@ -194,19 +457,18 @@
+@@ -197,19 +460,18 @@
  #  undef StandardDefines
  #  undef NeedFunctionPrototypes
  #  undef NeedWidePrototypes
@@ -1690,7 +1699,45 @@
  /*
   *  Create a Make Variable to allow building with/out Motif
   */
-@@ -221,17 +483,32 @@
+@@ -222,25 +484,28 @@
+ #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 OptimisedFortranFlags  OptimizedCDebugFlags -funroll-loops
++/* Remove -fomit-frame-pointer since -O implies it and it inhibits debugging */
+ # define DefaultFCOptions       -fno-second-underscore
+ # 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 +514,32 @@
  /* Start CERNLIB changes A.Waananen 15. Apr. 1996 */
  /*  Adapted to CERN style GF. 20-Sep-96 */
  
@@ -1726,7 +1773,7 @@
  
  # endif
  # endif
-@@ -251,7 +528,7 @@
+@@ -280,7 +560,7 @@
  /*
   *  Create a Make Variable to allow building with/out Motif
   */


Index: cernlib-318-additional-gcc-3.4-fixes.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/cernlib-318-additional-gcc-3.4-fixes.dpatch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- cernlib-318-additional-gcc-3.4-fixes.dpatch	1 Sep 2006 13:15:22 -0000	1.1
+++ cernlib-318-additional-gcc-3.4-fixes.dpatch	21 Apr 2007 14:35:24 -0000	1.2
@@ -5,43 +5,15 @@
 ## DP: Additional fixes for gcc 3.4, courtesy of Andreas Jochens.
 
 @DPATCH@
-diff -urNad cernlib-2005.05.09/src/packlib/cspack/tcpaw/tcpaw.c /tmp/dpep.f5SU0N/cernlib-2005.05.09/src/packlib/cspack/tcpaw/tcpaw.c
---- cernlib-2005.05.09/src/packlib/cspack/tcpaw/tcpaw.c	2005-06-14 12:31:12.078969103 -0400
-+++ /tmp/dpep.f5SU0N/cernlib-2005.05.09/src/packlib/cspack/tcpaw/tcpaw.c	2005-06-14 12:33:16.618251997 -0400
-@@ -2405,6 +2405,7 @@
-  */
- 
- static  FILE *cfile;
-+static  rnetrc(), token();
-  
- ruserpass(host, aname, apass)
-         char *host, **aname, **apass;
-@@ -2592,6 +2593,8 @@
- /*** NOTE MAXPASSWD IS DEFINED AS 8 IN ALL STANDARD UNIX SYSTEMS, BUT THIS
-  *** GIVES US PROBLEMS INTERWORKING WITH VMS AND CRAY-SECURID SYSTEMS. ***/
- #define MAXPASSWD     20       /* max significant characters in password */
-+
-+static void (*sig)(), catch();
-  
- char *
- getpass(prompt)
-@@ -2608,7 +2611,6 @@
-         register int c;
-         FILE    *fi;
-         static char pbuf[ MAXPASSWD + 1 ];
--        void    (*sig)(), catch();
-  
-         if((fi = fopen("/dev/tty", "r")) == NULL)
-                 return((char*)NULL);
 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
 +++ /tmp/dpep.f5SU0N/cernlib-2005.05.09/src/packlib/kuip/code_motif/iconwidget.c	2005-06-14 12:33:43.511482468 -0400
-@@ -31,7 +31,7 @@
- /* _Xm routine definitions  */
+@@ -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
-  * Gunter 30-jan-95


Index: cernlib-321-support-gfortran.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/cernlib-321-support-gfortran.dpatch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- cernlib-321-support-gfortran.dpatch	11 Sep 2006 22:32:35 -0000	1.1
+++ cernlib-321-support-gfortran.dpatch	21 Apr 2007 14:35:24 -0000	1.2
@@ -3,54 +3,8 @@
 ##
 ## All lines beginning with `## DP:' are a description of the patch.
 ## DP: Support compilation with gfortran.  Patch thanks to Harald Vogt
-## DP: (except for changes to src/config/linux.cf).
 
 @DPATCH@
-diff -urNad cernlib-2005.dfsg~/src/config/linux.cf cernlib-2005.dfsg/src/config/linux.cf
---- cernlib-2005.dfsg~/src/config/linux.cf	2006-09-07 15:06:06.891836867 -0400
-+++ cernlib-2005.dfsg/src/config/linux.cf	2006-09-07 15:06:08.249547206 -0400
-@@ -478,7 +478,7 @@
-     variable=value							@@\
- endif									@@\
- 
--# else    /* g77 */
-+# else    /* g77 or gfortran */
- 
- /* Start CERNLIB changes A.Waananen 15. Apr. 1996 */
- /*  Adapted to CERN style GF. 20-Sep-96 */
-@@ -498,17 +498,32 @@
- #endif
- 
- #define f2cFortran	        YES
-+#ifdef HasGFortran
-+#define FortranCmd		gfortran -g
-+#define gFortran		YES
-+#define CERNLIB_GFORTRAN
-+#else
- #define FortranCmd		g77 -g
-+#endif
- #define XargsCmd		xargs
- #define FortranSaveFlags	/* */ /* Everything static !? */
- #define OptimisedFortranFlags	OptimizedCDebugFlags -funroll-loops
- /* Remove -fomit-frame-pointer since -O implies it and it inhibits debugging */
-+
-+#ifdef HasGFortran
-+#ifndef DefaultFCOptions
-+# define DefaultFCOptions	-fno-automatic -fno-second-underscore
-+#endif
-+#define CernlibSystem	        CernlibDefaultDefines CernlibMachineDefines \
-+				CernlibLocalDefines -DCERNLIB_GFORTRAN
-+#else
- #ifndef DefaultFCOptions
- # define DefaultFCOptions	-fno-automatic -fno-second-underscore \
- 				-fugly-complex
- #endif
- #define CernlibSystem	        CernlibDefaultDefines CernlibMachineDefines \
- 				CernlibLocalDefines
-+#endif
- 
- # endif
- # endif
 diff -urNad cernlib-2005.dfsg~/src/mathlib/gen/c/rteq464.F cernlib-2005.dfsg/src/mathlib/gen/c/rteq464.F
 --- cernlib-2005.dfsg~/src/mathlib/gen/c/rteq464.F	1996-04-01 10:01:53.000000000 -0500
 +++ cernlib-2005.dfsg/src/mathlib/gen/c/rteq464.F	2006-09-07 15:06:08.249547206 -0400
@@ -93,47 +47,6 @@
        ENDIF
        W3=0
        IF(W1*W2 .NE. 0) W3=-Q/(8*W1*W2)
-diff -urNad cernlib-2005.dfsg~/src/mathlib/gen/c/wpsipg.F cernlib-2005.dfsg/src/mathlib/gen/c/wpsipg.F
---- cernlib-2005.dfsg~/src/mathlib/gen/c/wpsipg.F	1996-04-01 10:02:01.000000000 -0500
-+++ cernlib-2005.dfsg/src/mathlib/gen/c/wpsipg.F	2006-09-07 15:06:08.250546993 -0400
-@@ -62,7 +62,11 @@
-        H=0                                                                      
-        WRITE(ERRTXT,101) K                                                      
-        CALL MTLPRT(NAME,'C317.1',ERRTXT)                                        
--      ELSEIF(ABS(IMAG(U)) .LT. DELTA .AND. ABS(X+NINT(A)) .LT. DELTA)           
-+#if defined(CERNLIB_QFPGF77)||defined(CERNLIB_GFORTRAN)
-+      ELSEIF(ABS(AIMAG(U)) .LT. DELTA .AND. ABS(X+NINT(A)) .LT. DELTA)
-+#else
-+      ELSEIF(ABS(IMAG(U)) .LT. DELTA .AND. ABS(X+NINT(A)) .LT. DELTA)
-+#endif
-      1                                                        THEN              
-        H=0                                                                      
-        WRITE(ERRTXT,102) X                                                      
-@@ -88,7 +92,11 @@
-        IF(X .LT. 0) THEN                                                        
-         V=PI*U                                                                  
-         X=V                                                                     
--        Y=IMAG(V)                                                               
-+#if defined(CERNLIB_QFPGF77)||defined(CERNLIB_GFORTRAN)
-+        Y=AIMAG(V)
-+#else
-+        Y=IMAG(V)
-+#endif
-         A=SIN(X)                                                                
-         B=COS(X)                                                                
-         T=TANH(Y)                                                               
-diff -urNad cernlib-2005.dfsg~/src/mathlib/gen/d/cfstft.F cernlib-2005.dfsg/src/mathlib/gen/d/cfstft.F
---- cernlib-2005.dfsg~/src/mathlib/gen/d/cfstft.F	1997-12-15 11:18:42.000000000 -0500
-+++ cernlib-2005.dfsg/src/mathlib/gen/d/cfstft.F	2006-09-07 15:06:08.250546993 -0400
-@@ -43,7 +43,7 @@
-       W=CMPLX(C,S)
-       U=W
-       C=SQRT(0.5*C+0.5)
--#if defined(CERNLIB_QFPGF77)
-+#if defined(CERNLIB_QFPGF77)||defined(CERNLIB_GFORTRAN)
-       S=AIMAG(W)/(C+C)
- #else
-       S=IMAG(W)/(C+C)
 diff -urNad cernlib-2005.dfsg~/src/mathlib/gen/v/nranf.F cernlib-2005.dfsg/src/mathlib/gen/v/nranf.F
 --- cernlib-2005.dfsg~/src/mathlib/gen/v/nranf.F	1996-04-01 10:02:54.000000000 -0500
 +++ cernlib-2005.dfsg/src/mathlib/gen/v/nranf.F	2006-09-07 15:06:08.250546993 -0400
@@ -152,24 +65,6 @@
        CALL RDMOUT(V)
        RETURN
        END
-diff -urNad cernlib-2005.dfsg~/src/mathlib/gen/v/v107z0.inc cernlib-2005.dfsg/src/mathlib/gen/v/v107z0.inc
---- cernlib-2005.dfsg~/src/mathlib/gen/v/v107z0.inc	2000-06-08 05:57:22.000000000 -0400
-+++ cernlib-2005.dfsg/src/mathlib/gen/v/v107z0.inc	2006-09-07 15:06:08.250546993 -0400
-@@ -16,9 +16,13 @@
- * v107z0.inc
- *
- 
--#if defined(CERNLIB_LNX)||defined(CERNLIB_ALLIANT)||defined(CERNLIB_DECS)||defined(CERNLIB_MACMPW)||defined(CERNLIB_SGI)
-+#if (defined(CERNLIB_LNX)||defined(CERNLIB_ALLIANT)||defined(CERNLIB_DECS)||defined(CERNLIB_MACMPW)||defined(CERNLIB_SGI))&&!defined(CERNLIB_GFORTRAN)
-       DATA IZ0/'33000000'X/
- 
-+#elif defined(CERNLIB_GFORTRAN)
-+*     this is the new Fortran 2003 ISO standard
-+      DATA IZ0/Z'33000000'/
-+
- #elif defined(CERNLIB_APOLLO)
-       DATA IZ0/16#33000000/
- 
 diff -urNad cernlib-2005.dfsg~/src/packlib/hbook/chbook/Imakefile cernlib-2005.dfsg/src/packlib/hbook/chbook/Imakefile
 --- cernlib-2005.dfsg~/src/packlib/hbook/chbook/Imakefile	1999-11-15 08:25:58.000000000 -0500
 +++ cernlib-2005.dfsg/src/packlib/hbook/chbook/Imakefile	2006-09-07 15:06:08.250546993 -0400
@@ -193,364 +88,3 @@
 +#endif
  
  SubdirLibraryTarget(NullParameter,NullParameter)
-diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/kerngen/klnx.h cernlib-2005.dfsg/src/packlib/kernlib/kerngen/kerngen/klnx.h
---- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/kerngen/klnx.h	1998-09-25 05:31:11.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/kerngen/klnx.h	2006-09-07 15:13:01.777308060 -0400
-@@ -8,15 +8,16 @@
- *       Hollerith storage not orthodox
- *              UCOPY et al. to copy integers
- #endif
--#ifndef CERNLIB_QMLNX
--#define CERNLIB_QMLNX
--#endif
- #ifndef CERNLIB_QPOSIX
- #define CERNLIB_QPOSIX
- #endif
- #ifndef CERNLIB_QIEEE
- #define CERNLIB_QIEEE
- #endif
-+#if (!defined(CERNLIB_GFORTRAN))
-+# ifndef CERNLIB_QMLNX
-+#  define CERNLIB_QMLNX
-+# endif
- #if (!defined(CERNLIB_PPC))
- #  ifdef CERNLIB_QISASTD
- #    undef CERNLIB_QISASTD
-@@ -32,6 +33,21 @@
- #    define CERNLIB_QORTHOLL
- #  endif
- #endif
-+#else
-+#if 0
-+*      gfortran follows
-+#endif
-+# ifdef CERNLIB_QMLNX
-+#  undef CERNLIB_QMLNX
-+# endif
-+# ifndef CERNLIB_QISASTD
-+#  define CERNLIB_QISASTD
-+# endif
-+# ifdef CERNLIB_QORTHOLL
-+#  undef CERNLIB_QORTHOLL
-+# endif
-+#endif
-+
- #ifndef CERNLIB_QINTCOPY
- #define CERNLIB_QINTCOPY
- #endif
-diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/tcgen/Imakefile cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgen/Imakefile
---- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/tcgen/Imakefile	1997-02-04 12:36:14.000000000 -0500
-+++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgen/Imakefile	2006-09-07 15:06:08.251546780 -0400
-@@ -52,7 +52,7 @@
- #if defined(CERNLIB_DOS) || defined(CERNLIB_MPW) || defined(CERNLIB_LNX) || defined(CERNLIB_WINNT)
- SRCS_F := $(SRCS_F) lenocc.F 
- #endif
--#ifdef CERNLIB_HPUX
-+#if defined(CERNLIB_HPUX) || defined(CERNLIB_GFORTRAN)
- SRCS_F := $(SRCS_F) getarg.F
- #endif
- 
-diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/tcgen/getarg.F cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgen/getarg.F
---- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/tcgen/getarg.F	1996-02-15 12:49:40.000000000 -0500
-+++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgen/getarg.F	2006-09-07 15:06:08.251546780 -0400
-@@ -11,4 +11,6 @@
- #include "hpxgs/getarg.F"
- #elif defined(CERNLIB_QMVAX)
- #include "vaxsys/getarg.F"
-+#elif defined(CERNLIB_GFORTRAN)
-+#include "lnxgfort/getarg.F"
- #endif
-diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/tcgen/lnxgfort/getarg.F cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgen/lnxgfort/getarg.F
---- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/tcgen/lnxgfort/getarg.F	1969-12-31 19:00:00.000000000 -0500
-+++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgen/lnxgfort/getarg.F	2006-09-07 15:06:08.251546780 -0400
-@@ -0,0 +1,17 @@
-+*
-+      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 MYGETARG (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-2005.dfsg~/src/packlib/kernlib/kerngen/tcgens/iucomh.F cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgens/iucomh.F
---- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/tcgens/iucomh.F	1997-02-04 12:36:24.000000000 -0500
-+++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgens/iucomh.F	2006-09-07 15:06:08.251546780 -0400
-@@ -17,7 +17,7 @@
- #include "wntgs/iucomh.F"
- #elif defined(CERNLIB_QMDOS)
- #include "dosgs/iucomh.F"
--#elif defined(CERNLIB_QMVAOS)||defined(CERNLIB_QMVMI)
-+#elif defined(CERNLIB_QMVAOS)||defined(CERNLIB_QMVMI)||defined(CERNLIB_GFORTRAN)
- #include "allgs/iucomh.F"
- #elif defined(CERNLIB_QMLNX)
- #include "lnxgs/iucomh.F"
-diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/tcgens/rndm.F cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgens/rndm.F
---- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/tcgens/rndm.F	1997-10-23 12:37:04.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgens/rndm.F	2006-09-07 15:06:08.252546566 -0400
-@@ -24,7 +24,7 @@
- #include "mpwgs/rndm.F"
- #elif defined(CERNLIB_QMVAOS)||defined(CERNLIB_QMVMI)
- #include "allgs/rndm.F"
--#elif defined(CERNLIB_QMLNX)
-+#elif defined(CERNLIB_QMLNX)||defined(CERNLIB_GFORTRAN)
- #include "lnxgs/rndm.F"
- #elif defined(CERNLIB_QMIRTD)
- #include "irtdgs/rndm.F"
-diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/tcgens/ublow.F cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgens/ublow.F
---- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/tcgens/ublow.F	1998-09-25 05:32:02.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgens/ublow.F	2006-09-07 15:06:08.252546566 -0400
-@@ -25,7 +25,7 @@
- #include "dosgs/ublow.F"
- #elif defined(CERNLIB_QMMPW)
- #include "mpwgs/ublow.F"
--#elif defined(CERNLIB_QMVAOS)||defined(CERNLIB_QMVMI)
-+#elif defined(CERNLIB_QMVAOS)||defined(CERNLIB_QMVMI)||defined(CERNLIB_GFORTRAN)
- #include "allgs/ublow.F"
- #elif (defined(CERNLIB_QMLNX) && !defined(CERNLIB_PPC))
- #include "lnxgs/ublow.F"
-diff -urNad cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/tcgens/ubunch.F cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgens/ubunch.F
---- cernlib-2005.dfsg~/src/packlib/kernlib/kerngen/tcgens/ubunch.F	1998-09-25 05:32:06.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/kernlib/kerngen/tcgens/ubunch.F	2006-09-07 15:06:08.252546566 -0400
-@@ -23,7 +23,7 @@
- #include "wntgs/ubunch.F"
- #elif defined(CERNLIB_QMDOS) || defined(CERNLIB_WINNT)
- #include "dosgs/ubunch.F"
--#elif defined(CERNLIB_QMVAOS)||defined(CERNLIB_QMVMI)
-+#elif defined(CERNLIB_QMVAOS)||defined(CERNLIB_QMVMI)||defined(CERNLIB_GFORTRAN)
- #include "allgs/ubunch.F"
- #elif (defined(CERNLIB_QMLNX) && !defined(CERNLIB_PPC))
- #include "lnxgs/ubunch.F"
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/fq/fzdaeof.inc cernlib-2005.dfsg/src/packlib/zebra/fq/fzdaeof.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/fq/fzdaeof.inc	1996-03-06 05:47:08.000000000 -0500
-+++ cernlib-2005.dfsg/src/packlib/zebra/fq/fzdaeof.inc	2006-09-07 15:06:08.252546566 -0400
-@@ -30,7 +30,7 @@
- ***   PARAMETER    (IOSEOF = 10)     !*  for xlf 2.2
- ***   PARAMETER    (IOSEOF = 122)    !*  for xlf 2.3
-       PARAMETER    (IOSEOF = 1)      !*  for xlf 3.2
--#elif defined(CERNLIB_QMLNX)
-+#elif defined(CERNLIB_QMLNX)&&!defined(CERNLIB_GFORTRAN)
-       PARAMETER    (IOSEOF = 36)
- #elif defined(CERNLIB_QMOS9)
-       PARAMETER    (IOSEOF = 326)
-@@ -43,6 +43,8 @@
- #elif defined(CERNLIB_WINDOWS)
- *    only valid for dec fortran (e.g. not f2c + microsoft c)
-       PARAMETER    (IOSEOF = 36)
-+#elif defined(CERNLIB_GFORTRAN)
-+      PARAMETER    (IOSEOF = 3)
- #elif 1
-       PARAMETER    (IOSEOF = -1)
- #endif
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_and.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_and.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_and.inc	1996-04-18 12:15:05.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_and.inc	2006-09-07 15:06:08.252546566 -0400
-@@ -24,7 +24,7 @@
- #elif defined(CERNLIB_QMIBMSI)
-       IAND (IZV,IZW) = LAND (IZV, IZW)
- 
--#elif defined(CERNLIB_LNX)
-+#elif (defined(CERNLIB_LNX))&&(!defined(CERNLIB_GFORTRAN))
-       IAND(IZV,IZW)  = AND(IZV,IZW)
- 
- #elif defined(CERNLIB_SUN)
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_andor.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_andor.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_andor.inc	1996-03-06 05:46:52.000000000 -0500
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_andor.inc	2006-09-07 15:06:08.253546353 -0400
-@@ -36,7 +36,7 @@
-       IEOR (IZV,IZW) = LXOR (IZV, IZW)
-       NOT (IZW)      = LCOMPL (IZW)
- 
--#elif defined(CERNLIB_LNX)
-+#elif (defined(CERNLIB_LNX))&&(!defined(CERNLIB_GFORTRAN))
-       IAND(IZV,IZW)  = AND(IZV,IZW)
-        IOR(IZV,IZW)  =  OR(IZV,IZW)
-       IEOR(IZV,IZW)  = XOR(IZV,IZW)
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_jbit.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_jbit.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_jbit.inc	1996-04-18 12:15:06.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_jbit.inc	2006-09-07 15:06:08.253546353 -0400
-@@ -47,7 +47,7 @@
- #elif defined(CERNLIB_QF_SIEM)
-       JBIT (IZW,IZP)    = SHFTR (SHFTL(IZW,32-IZP), 31)
- 
--#elif defined(CERNLIB_LINUX)
-+#elif (defined(CERNLIB_LINUX))&&(!defined(CERNLIB_GFORTRAN))
-       JBIT(IZW,IZP)     = AND(ISHFTR(IZW,IZP-1),1)
- 
- #elif defined(CERNLIB_OS9)
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_jbyt.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_jbyt.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_jbyt.inc	1996-04-18 12:15:07.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_jbyt.inc	2006-09-07 15:06:08.253546353 -0400
-@@ -45,7 +45,7 @@
- #elif defined(CERNLIB_QF_SIEM)
-       JBYT (IZW,IZP,NZB)= SHFTR (SHFTL(IZW,33-IZP-NZB), 32-NZB)
- 
--#elif defined(CERNLIB_LINUX)
-+#elif (defined(CERNLIB_LINUX))&&(!defined(CERNLIB_GFORTRAN))
-       JBYT(IZW,IZP,NZB) = ISHFTR(LSHIFT(IZW,33-IZP-NZB),32-NZB)
- 
- #elif defined(CERNLIB_OS9)
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_jbytet.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_jbytet.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_jbytet.inc	1996-04-18 12:15:07.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_jbytet.inc	2006-09-07 15:06:08.253546353 -0400
-@@ -52,7 +52,7 @@
-       JBYTET (MZ,IZW,IZP,NZB) = LAND (MZ,
-      +                        SHFTR (SHFTL(IZW,33-IZP-NZB), 32-NZB) )
- 
--#elif defined(CERNLIB_LINUX)
-+#elif (defined(CERNLIB_LINUX))&&(!defined(CERNLIB_GFORTRAN))
-       JBYTET (MZ,IZW,IZP,NZB) = AND (MZ,
-      +                        ISHFTR (LSHIFT(IZW,33-IZP-NZB),32-NZB) )
- 
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_jbytor.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_jbytor.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_jbytor.inc	1996-04-18 12:15:10.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_jbytor.inc	2006-09-07 15:06:08.253546353 -0400
-@@ -50,7 +50,7 @@
-       JBYTOR (MZ,IZW,IZP,NZB) = LOR  (MZ,
-      +                        SHFTR (SHFTL(IZW,33-IZP-NZB), 32-NZB) )
- 
--#elif defined(CERNLIB_LINUX)
-+#elif (defined(CERNLIB_LINUX))&&(!defined(CERNLIB_GFORTRAN))
-       JBYTOR (MZ,IZW,IZP,NZB) = OR  (MZ,
-      +                        ISHFTR (LSHIFT(IZW,33-IZP-NZB),32-NZB) )
- 
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_mbytet.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_mbytet.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_mbytet.inc	1996-04-18 12:15:11.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_mbytet.inc	2006-09-07 15:06:08.254546140 -0400
-@@ -51,7 +51,7 @@
-       MBYTET (MZ,IZW,IZP,NZB) = LAND (IZW, LCOMPL(SHFTR (
-      +                       SHFTL(LCOMPL(MZ),32-NZB), 33-IZP-NZB)) )
- 
--#elif defined(CERNLIB_LINUX)
-+#elif (defined(CERNLIB_LINUX))&&(!defined(CERNLIB_GFORTRAN))
-       MBYTET (MZ,IZW,IZP,NZB) = AND (IZW,
-      +           NOT(ISHFTR (LSHIFT(NOT(MZ),32-NZB),33-IZP-NZB)) )
- 
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_mbytor.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_mbytor.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_mbytor.inc	1996-04-18 12:15:12.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_mbytor.inc	2006-09-07 15:06:08.254546140 -0400
-@@ -51,7 +51,7 @@
-       MBYTOR (MZ,IZW,IZP,NZB) = LOR (IZW, SHFTR (
-      +                               SHFTL(MZ,32-NZB), 33-IZP-NZB) )
- 
--#elif defined(CERNLIB_LINUX)
-+#elif (defined(CERNLIB_LINUX))&&(!defined(CERNLIB_GFORTRAN))
-       MBYTOR (MZ,IZW,IZP,NZB) = OR (IZW,
-      +       ISHFTR (LSHIFT(MZ,32-NZB),33-IZP-NZB))
- 
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_or.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_or.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_or.inc	1996-04-18 12:15:13.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_or.inc	2006-09-07 15:06:08.254546140 -0400
-@@ -24,7 +24,7 @@
- #elif defined(CERNLIB_QMIBMSI)
-       IOR  (IZV,IZW) =  LOR (IZV, IZW)
- 
--#elif defined(CERNLIB_LNX)
-+#elif (defined(CERNLIB_LNX))&&(!defined(CERNLIB_GFORTRAN))
-        IOR(IZV,IZW)  =  OR(IZV,IZW)
- 
- #elif defined(CERNLIB_SUN)
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_sbit.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_sbit.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_sbit.inc	1996-04-18 12:15:23.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_sbit.inc	2006-09-07 15:06:08.254546140 -0400
-@@ -46,7 +46,7 @@
-       MSBIT (MZ,IZW,IZP) = LOR (LAND (IZW, LCOMPL(SHFTL(1,IZP-1)) )
-      +                                 , SHFTL(LAND(MZ,1),IZP-1) )
- 
--#elif defined(CERNLIB_LINUX)
-+#elif (defined(CERNLIB_LINUX))&&(!defined(CERNLIB_GFORTRAN))
-       MSBIT (MZ,IZW,IZP) = OR (AND (IZW, NOT(LSHIFT(1,IZP-1)))
-      +                              ,LSHIFT(AND(MZ,1),IZP-1))
- 
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_sbit0.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_sbit0.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_sbit0.inc	1996-04-18 12:15:24.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_sbit0.inc	2006-09-07 15:06:08.254546140 -0400
-@@ -41,7 +41,7 @@
- #elif defined(CERNLIB_QF_SIEM)
-       MSBIT0 (IZW,IZP)   = LAND (IZW, LCOMPL(SHFTL(1,IZP-1)) )
- 
--#elif defined(CERNLIB_LINUX)
-+#elif (defined(CERNLIB_LINUX))&&(!defined(CERNLIB_GFORTRAN))
-       MSBIT0 (IZW,IZP)   = AND (IZW, NOT(LSHIFT(1,IZP-1)))
- 
- #elif defined(CERNLIB_PDP)
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_sbit1.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_sbit1.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_sbit1.inc	1996-04-18 12:15:24.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_sbit1.inc	2006-09-07 15:06:08.255545926 -0400
-@@ -40,7 +40,7 @@
- #elif defined(CERNLIB_QF_SIEM)
-       MSBIT1 (IZW,IZP)   = LOR  (IZW,        SHFTL(1,IZP-1)  )
- 
--#elif defined(CERNLIB_LINUX)
-+#elif (defined(CERNLIB_LINUX))&&(!defined(CERNLIB_GFORTRAN))
-       MSBIT1 (IZW,IZP)   = OR  (IZW,     LSHIFT(1,IZP-1))
- 
- #elif defined(CERNLIB_PDP)
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_sbyt.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_sbyt.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_sbyt.inc	1996-03-06 05:46:52.000000000 -0500
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_sbyt.inc	2006-09-07 15:06:08.255545926 -0400
-@@ -43,7 +43,7 @@
-      +            LAND (IZW, LCOMPL(SHFTL (SHFTR(-1,32-NZB), IZP-1)))
-      +          , SHFTR (SHFTL(MZ,32-NZB), 33-IZP-NZB) )
- 
--#elif defined(CERNLIB_LINUX)
-+#elif (defined(CERNLIB_LINUX))&&(!defined(CERNLIB_GFORTRAN))
-       MSBYT (MZ,IZW,IZP,NZB) = OR (
-      +       AND (IZW, NOT(LSHIFT (ISHFTR(NOT(0),32-NZB),IZP-1)))
-      +      ,ISHFTR (LSHIFT(MZ,32-NZB), 33-IZP-NZB) )
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_shift.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_shift.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_shift.inc	1996-03-06 05:46:52.000000000 -0500
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_shift.inc	2006-09-07 15:06:08.255545926 -0400
-@@ -36,7 +36,7 @@
-       ISHFTL (IZW,NZB) = SHFTL (IZW, NZB)
-       ISHFTR (IZW,NZB) = SHFTR (IZW, NZB)
- 
--#elif defined(CERNLIB_LINUX)
-+#elif (defined(CERNLIB_LINUX))&&(!defined(CERNLIB_GFORTRAN))
-       ISHFTL (IZW,NZB) = LSHIFT (IZW,NZB)
- 
- #elif (defined(CERNLIB_SUN))&&(!defined(CERNLIB_BUGLRSHFT))
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_shiftl.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_shiftl.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_shiftl.inc	1996-04-18 12:15:25.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_shiftl.inc	2006-09-07 15:06:08.255545926 -0400
-@@ -28,7 +28,7 @@
- #elif defined(CERNLIB_QF_SIEM)
-       ISHFTL (IZW,NZB) = SHFTL (IZW, NZB)
- 
--#elif defined(CERNLIB_LINUX)
-+#elif (defined(CERNLIB_LINUX))&&(!defined(CERNLIB_GFORTRAN))
-       ISHFTL (IZW,NZB) = LSHIFT (IZW,NZB)
- 
- #elif (defined(CERNLIB_SUN))&&(!defined(CERNLIB_BUGLRSHFT))
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_shiftr.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_shiftr.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_shiftr.inc	1996-04-18 12:15:25.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_shiftr.inc	2006-09-07 15:06:08.255545926 -0400
-@@ -32,7 +32,7 @@
- #elif defined(CERNLIB_QF_SIEM)
-       ISHFTR (IZW,NZB) = SHFTR (IZW, NZB)
- 
--#elif defined(CERNLIB_LINUX)
-+#elif (defined(CERNLIB_LINUX))&&(!defined(CERNLIB_GFORTRAN))
- 
- #elif (defined(CERNLIB_SUN))&&(!defined(CERNLIB_BUGLRSHFT))
-       ISHFTR (IZW,NZB) = lrshft (IZW, NZB)
-diff -urNad cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_xor.inc cernlib-2005.dfsg/src/packlib/zebra/zebra/q_xor.inc
---- cernlib-2005.dfsg~/src/packlib/zebra/zebra/q_xor.inc	1996-04-18 12:15:26.000000000 -0400
-+++ cernlib-2005.dfsg/src/packlib/zebra/zebra/q_xor.inc	2006-09-07 15:06:08.256545713 -0400
-@@ -24,7 +24,7 @@
- #elif defined(CERNLIB_QMIBMSI)
-       IEOR (IZV,IZW) = LXOR (IZV, IZW)
- 
--#elif defined(CERNLIB_LNX)
-+#elif (defined(CERNLIB_LNX))&&(!defined(CERNLIB_GFORTRAN))
-       IEOR(IZV,IZW)  = XOR(IZV,IZW)
- 
- #elif defined(CERNLIB_SUN)


Index: cernlib-803-link-binaries-dynamically.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/cernlib-803-link-binaries-dynamically.dpatch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- cernlib-803-link-binaries-dynamically.dpatch	1 Sep 2006 13:15:22 -0000	1.1
+++ cernlib-803-link-binaries-dynamically.dpatch	21 Apr 2007 14:35:24 -0000	1.2
@@ -47,12 +47,12 @@
 diff -urNad cernlib-2005.05.09/src/packlib/kuip/programs/kxterm/Imakefile /tmp/dpep.E9pQlc/cernlib-2005.05.09/src/packlib/kuip/programs/kxterm/Imakefile
 --- cernlib-2005.05.09/src/packlib/kuip/programs/kxterm/Imakefile	2005-06-13 15:26:18.903636773 -0400
 +++ /tmp/dpep.E9pQlc/cernlib-2005.05.09/src/packlib/kuip/programs/kxterm/Imakefile	2005-06-13 15:26:23.699609849 -0400
-@@ -13,17 +13,17 @@
+@@ -13,14 +13,14 @@
  DefinePackageLibrary(kxtlib)
  
  #if defined(CERNLIB_UNIX)
 -CLIBS= -G Motif kernlib
-+CLIBS= -G Motif Xm
++CLIBS= -G Motif -u Xm
  # if defined(CERNLIB_INTELIFC)
  CLIBS= $(CLIBS) -nofor_main
  # endif
@@ -64,7 +64,3 @@
  #endif
  
  
--CernlibCcProgramTarget(kxterm,kxterm.o,libkxtlib.a,libkxtlib.a,$(CLIBS))
-+CernlibFortranProgramTarget(kxterm,kxterm.o,libkxtlib.a,libkxtlib.a,$(CLIBS))
- 
- InstallProgram(kxterm,$(CERN_BINDIR))


Index: cernlib-805-expunge-missing-mathlib-kernlib-symbols.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/cernlib-805-expunge-missing-mathlib-kernlib-symbols.dpatch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- cernlib-805-expunge-missing-mathlib-kernlib-symbols.dpatch	1 Sep 2006 13:15:22 -0000	1.1
+++ cernlib-805-expunge-missing-mathlib-kernlib-symbols.dpatch	21 Apr 2007 14:35:24 -0000	1.2
@@ -6,19 +6,6 @@
 ## DP: dummy symbols where needed.
 
 @DPATCH@
-diff -urNad cernlib-2005.05.09.dfsg~/src/kernlib/kerngen/ccgen/Imakefile cernlib-2005.05.09.dfsg/src/kernlib/kerngen/ccgen/Imakefile
---- cernlib-2005.05.09.dfsg~/src/kernlib/kerngen/ccgen/Imakefile	2006-05-16 10:42:32.138587850 -0400
-+++ cernlib-2005.05.09.dfsg/src/kernlib/kerngen/ccgen/Imakefile	2006-05-16 10:42:40.475808665 -0400
-@@ -1,6 +1,8 @@
- #ifndef CERNLIB_VAXVMS
- 
--SRCS_F= accessf.F chdirf.F getenvf.F getwdf.F lstatf.F perrorf.F \ @@\
-+/* perrorf.F has been removed since it depends upon files which introduce
-+   unreferenced dependencies into the shared libraries.  --Kevin McCarty */
-+SRCS_F= accessf.F chdirf.F getenvf.F getwdf.F lstatf.F           \ @@\
- 	readlnf.F renamef.F setenvf.F statf.F systemf.F tmpro.F \ @@\
- 	tmproi.F toslat.F unlinkf.F
- 
 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


Index: cernlib-deadpool.txt
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/cernlib-deadpool.txt,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- cernlib-deadpool.txt	30 Nov 2005 22:01:01 -0000	1.2
+++ cernlib-deadpool.txt	21 Apr 2007 14:35:24 -0000	1.3
@@ -7,6 +7,7 @@
 # Authors of Pythia/Jetset did NOT give permission to release
 # their code under GPL.  CERN should have checked this more carefully!!!
 car/jetset74.car
+cmz/jetset74.cmz
 mclibs/jetset/
 mclibs/pythia/
 
@@ -20,8 +21,8 @@
 # the web site http://www.fluka.org/Faq.html
 car/geanf.car
 car/geanf321.car
-#cmz/geanf.cmz
-#cmz/geanf321.cmz
+cmz/geanf.cmz
+cmz/geanf321.cmz
 geant321/data/flukaaf.dat
 geant321/block/
 geant321/fiface/

cernlib-enforce-FHS.diff:

Index: cernlib-enforce-FHS.diff
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/cernlib-enforce-FHS.diff,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- cernlib-enforce-FHS.diff	30 Nov 2005 22:01:01 -0000	1.1
+++ cernlib-enforce-FHS.diff	21 Apr 2007 14:35:24 -0000	1.2
@@ -10,39 +10,3 @@
           INQUIRE(FILE=XSFILE,EXIST=EXISTS)
           IF(.NOT.EXISTS) THEN
              CHROOT=' '
-diff -ur ../original-cernlib-source/src/mclibs/cojets/test/test.F src/mclibs/cojets/test/test.F
---- ../original-cernlib-source/src/mclibs/cojets/test/test.F    Mon Mar 25 07:53:36 1996
-+++ src/mclibs/cojets/test/test.F    Tue Oct 22 07:27:55 2002
-@@ -6,7 +6,7 @@
- #if defined(CERNLIB_IBMVM)
-       PARAMETER (DFILE='/COJETS DATA *')
- #else
--      PARAMETER (DFILE='cojets.dat')
-+      PARAMETER (DFILE='DATADIR/cojets.dat')
- #endif
- C
- C          MAIN PROGRAM FOR COJETS
-diff -ur ../original-cernlib-source/src/mclibs/eurodec/eurodec/eufiles.inc src/mclibs/eurodec/eurodec/eufiles.inc
---- ../original-cernlib-source/src/mclibs/eurodec/eurodec/eufiles.inc   Fri Mar  8 11:58:49 1996
-+++ src/mclibs/eurodec/eurodec/eufiles.inc   Tue Oct 22 07:27:55 2002
-@@ -18,7 +18,7 @@
-       PARAMETER (ETFILE='/EUTITLE DAT   *')
- #endif
-       CHARACTER*(*) EDFILE,ETFILE
--      PARAMETER (EDFILE='eurodec.dat')
-+      PARAMETER (EDFILE='DATADIR/eurodec.dat')
-       PARAMETER (ETFILE='eutitle.dat')
-
- #endif
-diff -ur ../original-cernlib-source/src/mclibs/isajet/test/isajett.F src/mclibs/isajet/test/isajett.F
---- ../original-cernlib-source/src/mclibs/isajet/test/isajett.F Fri Mar 14 12:32:39 1997
-+++ src/mclibs/isajet/test/isajett.F Tue Oct 22 07:27:55 2002
-@@ -8,7 +8,7 @@
- #if defined(CERNLIB_VAXVMS)
-       PARAMETER (DFILE='CERN_ROOT:[lib]isajet.dat')
- #else
--      PARAMETER (DFILE='isajet.dat')
-+      PARAMETER (DFILE='DATADIR/isajet.dat')
- #endif
- #endif
- C

cernlib-fortify.patch:

Index: cernlib-fortify.patch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/cernlib-fortify.patch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- cernlib-fortify.patch	7 Jan 2007 12:25:24 -0000	1.1
+++ cernlib-fortify.patch	21 Apr 2007 14:35:24 -0000	1.2
@@ -1,5 +1,5 @@
---- cernlib-2005/2005/src/packlib/kuip/kuip/kstring.h.old	2007-01-06 23:10:47.000000000 +0100
-+++ cernlib-2005/2005/src/packlib/kuip/kuip/kstring.h	2007-01-06 23:11:53.000000000 +0100
+--- cernlib-2006/2006/src/packlib/kuip/kuip/kstring.h.fortify	2007-04-13 02:26:39.000000000 +0200
++++ cernlib-2006/2006/src/packlib/kuip/kuip/kstring.h	2007-04-13 02:27:12.000000000 +0200
 @@ -21,8 +21,10 @@
   */
  


Index: cernlib-remove-deadpool
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/cernlib-remove-deadpool,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- cernlib-remove-deadpool	16 Nov 2005 23:34:07 -0000	1.1
+++ cernlib-remove-deadpool	21 Apr 2007 14:35:24 -0000	1.2
@@ -1,26 +1,28 @@
-#!/bin/bash
+#!/bin/sh
 
 set -e
 cd .
 
+file=2006_src.tar.gz
+result=2006_src-free.tar.gz
+echo Unpacking compressed source from $file...
+tar xzf $file
 for dir in `tr '/' ' ' < ./cernlib-deadpool.txt | awk '{print $1}' \
 	| sed -e 's/#.*//g' -e '/$^/d' | sort | uniq` ; do
-	file=src_${dir}.tar.gz
-	echo Unpacking compressed source from $file...
-	tar xzf $file
 #	version=`ls -1 | head -n 1`
-	version=2005
-	echo Removing files with bad copyright...
+	version=2006
+	echo Removing files with bad copyright from $dir module...
 	for badfile in `grep '^'$dir ./cernlib-deadpool.txt \
 			| sed 's/\#.*$//g'` ; do
 		path=$version/src/$badfile
 		[ -e "$path" ] || echo "Skipping non-existent $path ..."
 		rm -rf $version/src/$badfile
 	done
-	echo Repacking $file.
-	tar czf $file $version
-	rm -rf $version
 done
+echo Repacking $result.
+rm -f $result
+tar czf $result $version
+rm -rf $version
 echo Done.
 
 exit 0


Index: cernlib.spec
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/cernlib.spec,v
retrieving revision 1.38
retrieving revision 1.39
diff -u -r1.38 -r1.39
--- cernlib.spec	7 Jan 2007 12:25:24 -0000	1.38
+++ cernlib.spec	21 Apr 2007 14:35:24 -0000	1.39
@@ -1,12 +1,12 @@
-%if "%fedora" > "7"
+%if "%fedora" > "6"
 %bcond_without gfortran
 %else
 %bcond_with gfortran
 %endif
 
 Name:          cernlib
-Version:       2005
-Release:       27%{?dist}
+Version:       2006
+Release:       1%{?dist}
 Summary:       General purpose CERN library and associated binaries
 Group:         Development/Libraries
 # As explained in the cernlib on debian FAQ, cfortran can be considered LGPL.
@@ -37,10 +37,15 @@
 # workaround #173530
 BuildRequires: libXau-devel
 %endif
+
+BuildRequires: xbae-devel libXaw-devel
+
 # for patchy build scripts
 BuildRequires: tcsh
 BuildRequires: gawk
 
+BuildRequires: desktop-file-utils
+
 %if %{with gfortran}
 BuildRequires: gcc-gfortran
 %else
@@ -53,24 +58,12 @@
 # and cernlib-deadpool.txt to recreate them from the upstream
 # In a directory with the cernlib sources, issue 
 # sh cernlib-remove-deadpool 
-Source3: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_geant321.tar.gz
-Source4: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_graflib.tar.gz
-Source7: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_mclibs.tar.gz
-Source8: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_packlib.tar.gz 
-Source10: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_pawlib.tar.gz
-# not used during the build (if I'm not wrong)
-Source15: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_car.tar.gz
-# unmodified files
-Source0: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_config.tar.gz
-Source2: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_Imakefile.tar.gz
-Source5: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_include.tar.gz
-Source6: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_mathlib.tar.gz 
-Source11: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_phtools.tar.gz
-Source12: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_scripts.tar.gz
-Source9: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_patchy.tar.gz
-Source14: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/tar/src_cfortran.tar.gz
-Source16: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2005_source/lib/xsneut95.dat
-# The patchy version 4 sources
+
+# source is now monolithic
+#Source0: http://wwwasd.web.cern.ch/wwwasd/cernlib/download/2006_source/tar/2006_src.tar.gz
+Source0: 2006_src-free.tar.gz
+
+# The patchy version 4 sources. Mattias Ellert gave it so me in a mail.
 Source17: patchy.tar.gz
 # this is modified with regard with what Mattias gave me. Indeed the file
 # containing some other files (p4inceta) was in fortran unformatted format, 
@@ -98,10 +91,10 @@
 Source203: cernlib-debian-copyright.in
 
 # debian patchsets
-Patch100001: cernlib_2005.dfsg-3.diff 
-Patch100002: paw_2.14.04-3.diff
-Patch100003: mclibs_2005.dfsg-1.diff
-Patch100004: geant321_3.21.14.dfsg-1.diff
+Patch100001: http://ftp.debian.org/debian/pool/main/c/cernlib/cernlib_2006.dfsg-1.diff.gz
+Patch100002: http://ftp.debian.org/debian/pool/main/p/paw/paw_2.14.04.dfsg-1.diff.gz
+Patch100003: http://ftp.debian.org/debian/pool/main/m/mclibs/mclibs_2006.dfsg-1.diff.gz
+Patch100004: http://ftp.debian.org/debian/pool/main/g/geant321/geant321_3.21.14.dfsg-4.diff.gz
 # change file to directory to DATADIR
 Patch1100: cernlib-enforce-FHS.diff
 Patch1: geant321-001-fix-missing-fluka.dpatch
@@ -120,13 +113,14 @@
 Patch106: cernlib-106-fix-paw++-menus-in-lesstif.dpatch
 Patch107: cernlib-107-define-strdup-macro-safely.dpatch
 Patch108: paw-108-quote-protect-comis-script.dpatch
-# not used as xsneut.dat is at the right place
-#Patch109: 109-fix-broken-xsneut95.dat-link.dpatch
+# use xsneut95.dat from the archive
+Patch109: geant321-109-fix-broken-xsneut95.dat-link.dpatch
 Patch110: cernlib-110-ignore-included-lapack-rule.dpatch
 Patch111: cernlib-111-fix-kuesvr-install-location.dpatch
 Patch112: cernlib-112-remove-nonexistent-prototypes-from-gen.h.dpatch
 # a workaround for cups. Applied in doubt.
-Patch113: cernlib-113-cups-postscript-fix.dpatch
+# removed in 2006
+#Patch113: cernlib-113-cups-postscript-fix.dpatch
 # it is the same in all source packages...
 Patch114: 114-install-scripts-properly.dpatch
 Patch115: cernlib-115-rsrtnt64-goto-outer-block.dpatch
@@ -135,8 +129,10 @@
 Patch118: cernlib-118-rename-mathlib-common-blocks.dpatch
 Patch11901: cernlib-119-fix-compiler-warnings.dpatch
 Patch11902: paw-119-fix-compiler-warnings.dpatch
-Patch120: cernlib-120-fix-gets-usage-in-kuipc.dpatch 
-Patch121: cernlib-121-fix-mathlib-test-case-c209m.dpatch
+Patch12001: cernlib-120-fix-gets-usage-in-kuipc.dpatch 
+Patch12002: paw-120-fix-mlp-cdf-file.dpatch
+Patch12101: cernlib-121-fix-mathlib-test-case-c209m.dpatch
+Patch12102: paw-121-call-gfortran-in-cscrexec.dpatch
 Patch200: paw-200-comis-allow-special-chars-in-path.dpatch
 Patch201: cernlib-201-update-kuip-helper-apps.dpatch
 Patch202: cernlib-202-fix-includes-in-minuit-example.dpatch
@@ -154,10 +150,16 @@
 Patch210: 210-improve-cfortran-header-files.dpatch
 # split in newer debian patchset
 # in debian split there is a common part at the beginning of the patch
+# 
+# obsolete in 2006:
 # 211-support-amd64-and-itanium corresponds with a merge of
 # cernlib-211-support-amd64-and-itanium.dpatch
 # paw-211-support-amd64-and-itanium.dpatch
-Patch2110: 211-support-amd64-and-itanium.dpatch
+# 
+# in 2006
+# paw-211-support-amd64-and-itanium.dpatch has the common part removed
+Patch21101: cernlib-211-support-amd64-and-itanium.dpatch
+Patch21102: paw-211-support-amd64-and-itanium.dpatch
 Patch2111: cernlib-211-support-digital-alpha.dpatch
 Patch300: cernlib-300-skip-duplicate-lenocc.dpatch
 # Use another approach, see cernlib-enforce-FHS
@@ -187,7 +189,8 @@
 # It is a departure from upstream. Apply, but may revert if not agreed.  
 Patch31301: cernlib-313-comis-preserves-filename-case.dpatch
 Patch31302: paw-313-comis-preserves-filename-case.dpatch
-Patch314: cernlib-314-permit-using-regcomp-for-re_comp.dpatch
+# fixed in 2006
+#Patch314: cernlib-314-permit-using-regcomp-for-re_comp.dpatch
 # first chunk of the patches are the same in the split cernlib
 Patch315: 315-fixes-for-MacOSX.dpatch
 
@@ -196,7 +199,8 @@
 Patch319: cernlib-319-work-around-imake-segfaults.dpatch
 Patch32001: cernlib-320-support-ifort.dpatch
 Patch32002: paw-320-support-ifort-and-gfortran.dpatch
-Patch321: cernlib-321-support-gfortran.dpatch
+Patch32101: cernlib-321-support-gfortran.dpatch
+Patch32102: mclibs-321-support-gfortran.dpatch
 
 # use host.def for gfortran 
 Patch600: cernlib-600-use-host.def-config-file.dpatch
@@ -212,6 +216,7 @@
 # I would have preferred not to move the motif code to toplevel...
 # in paw debian split also remove other packages from LIBDIRS
 Patch705: 705-patch-paw_motif-paw-Imakefiles.dpatch
+Patch706: paw-706-use-external-xbae-and-xaw.dpatch
 
 Patch800: cernlib-800-implement-shared-library-rules-in-Imake.dpatch
 Patch80101: cernlib-801-non-optimized-rule-uses-fPIC-g.dpatch
@@ -236,35 +241,46 @@
 Patch80603: geant321-806-bump-mathlib-and-dependents-sonames.dpatch
 Patch80604: mclibs-806-bump-mathlib-and-dependents-sonames.dpatch
 
-# not applied in newer debian patchset
+# not applied in new debian patchset (around 2005)
 Patch3006: 022-no-assign-string-literals
-# fixed upstream
+# fixed upstream (in 2005)
 Patch3007: 027-use-tmpfile-not-mktemp
-# not applied in the newer debian patchset
+# not applied in the new debian patchset
 Patch3008: 031-fix-varargs-use
-# fixed upstream 
+# fixed upstream (in 2005)
 Patch3009: 048-log-to-var-log-not-tmp
-# fixed upstream
+# fixed upstream (in 2005)
 Patch3010: 049-fix-kuesvr-security-hole
-# fixed upstream
+# fixed upstream (in 2005)
 Patch3011: 050-make-secure-comis-tmpdir
-# fixed upstream
+# fixed upstream (in 2005)
 Patch3012: 051-fix-miscellaneous-tmp-uses
 
 # change the cernlib script such that -llapack -lblas is used instead of 
 # cernlib lapack
 # depend explicitely on libkernlib now that it is out of packlib
 # use lesstif-pawlib and lesstif-packlib
+# use external Xbae and Xaw
 # the modified script is renamed cernlib-static later and the debian cernlib
 # script is used instead.
-Patch1200: cernlib-cernlib_kernlib.patch
+Patch1200: cernlib-script.patch
 # don't stop if the CERN variable isn't defined
 Patch1201: cernlib-gxint-script.diff
-# FIXME: maybe those 2 patches aren't needed with newer gfortran anymore
-Patch1203: cernlib-hwuli2_use_dimag.diff 
-Patch1204: cernlib-hwhiga_use_dimag.diff
+# not needed in 2006
+#Patch1203: cernlib-hwuli2_use_dimag.diff 
+#Patch1204: cernlib-hwhiga_use_dimag.diff
 # don't add prototypes if allready defined as a macro
 Patch1205: cernlib-fortify.patch
+# modify the cernlib man page to fit with the distribution
+Patch1206: cernlib-man_static.patch
+# modify the debian cernlib paw desktop file icon name
+Patch1207: cernlib-fedora_desktop.patch
+# fix tests Imakefiles
+Patch1208: cernlib-test.patch
+# don't recurse in eurodec for tests because the testcase segfaults
+Patch1210: cernlib-segf_eudtest.patch
+# add a tool name in soname to distinguish g77 and gfortran builds
+Patch1209: cernlib-soname.patch
 
 # patchy 4
 # not applied as it has allready been done by the sed one-liner in 
@@ -272,13 +288,20 @@
 Patch1500: patchy-rceta.patch
 
 Patch1501: patchy-insecure_tmp_use.diff
-Patch1502: patchy-fcasplit.patch
+#Patch1502: patchy-fcasplit.patch
+# build fixes
 Patch1503: patchy-p4comp.patch
+# use the flags in the the p4boot.sh script and have fcasplit handle
+# enough command line arguments (this fcasplit is not shipped)
+Patch1507: patchy-use_OPT.patch
 
 # patchy 5 (included in cernlib)
-Patch1504: patchy-case.patch
-Patch1505: patchy-perror.patch
-Patch1506: patchy-yexpand.diff
+# correct build, use optflags and have fcasplit handle
+# enough command line arguments (this fcasplit is shipped)
+Patch1504: npatchy-np_flags.patch
+#Patch1505: patchy-perror.patch
+# in yexpand don't put temporary files in HOME, but in current directory
+Patch1506: npatchy-curdir.patch
 
 %description
 CERN program library is a large collection of general purpose libraries
@@ -293,16 +316,12 @@
 
 %package devel
 Summary:       General purpose CERN library static libraries and headers
-%if "%fedora" > "5"
-BuildRequires: lesstif-devel
-%else
-BuildRequires: openmotif-devel
-%endif
 %if "%fedora" <= "3"
 Requires:       lapack blas
 %else
 Requires:       lapack-devel blas-devel
 %endif
+Requires: xbae-devel libXaw-devel
 
 %if "%fedora" > "4"
 # workaround #173530
@@ -311,6 +330,9 @@
 Requires:      %{name} = %{version}-%{release}
 Group:         Development/Libraries
 
+# for the m4 macro directory ownership
+Requires: automake
+
 %description devel
 CERN program library is a large collection of general purpose libraries
 and modules maintained and offered on the CERN. Most of these programs 
@@ -391,19 +413,7 @@
 
 %prep
 %setup -q -c 
-%setup -q -T -D -a 2
-%setup -q -T -D -a 3
-%setup -q -T -D -a 4
-%setup -q -T -D -a 5
-%setup -q -T -D -a 6
-%setup -q -T -D -a 7
-%setup -q -T -D -a 8
-%setup -q -T -D -a 9
-%setup -q -T -D -a 10
-%setup -q -T -D -a 11
-%setup -q -T -D -a 12
-%setup -q -T -D -a 14
-%setup -q -T -D -a 15
+# patchy4
 %setup -q -T -D -a 17
 
 # patch patchy 4 installer fortran generator script
@@ -419,15 +429,21 @@
 #        ./rceta.sh
 #popd
 
-%patch -P 1502
+#%patch -P 1502 -b .use_OPT
 %patch -P 1503
-%patch -P 1205 -p1 -b .old
+%patch -P 1507 -p1 -b .use_OPT
 
+# patches for FORTIFY_SOURCE, cernlib-static script and man page
+%patch -P 1205 -p1 -b .fortify
+%patch -P 1200 -p1 -b .script
+%patch -P 1206 -p1 -b .man_static
 
+# debian patchesets
 %patch -P 100001 -p0
 %patch -P 100002 -p0
 %patch -P 100003 -p0
 %patch -P 100004 -p0 
+%patch -P 1207 -p1 -b .fedora_desktop
 cd %{version}
 %patch -P 1100 -p2
 %patch -P 1 -p1
@@ -449,11 +465,11 @@
 %patch -P 106 -p1
 %patch -P 107 -p1
 %patch -P 108 -p1
-#%patch -P 109 -p1
+%patch -P 109 -p1
 %patch -P 110 -p1
 %patch -P 111 -p1
 %patch -P 112 -p1
-%patch -P 113 -p1
+#%patch -P 113 -p1
 %patch -P 114 -p1
 %patch -P 115 -p1
 %patch -P 116 -p1
@@ -461,8 +477,10 @@
 %patch -P 118 -p1
 %patch -P 11901 -p1
 %patch -P 11902 -p1
-%patch -P 120 -p1
-%patch -P 121 -p1
+%patch -P 12001 -p1
+%patch -P 12002 -p1
+%patch -P 12101 -p1
+%patch -P 12102 -p1
 %patch -P 200 -p1
 %patch -P 201 -p1
 %patch -P 202 -p1
@@ -474,7 +492,8 @@
 %patch -P 208 -p1
 %patch -P 209 -p1
 %patch -P 210 -p1
-%patch -P 2110 -p1
+%patch -P 21101 -p1
+%patch -P 21102 -p1
 %patch -P 2111 -p1
 %patch -P 300 -p1
 #%patch -P 301 -p1
@@ -493,18 +512,20 @@
 %patch -P 312 -p1
 %patch -P 31301 -p1
 %patch -P 31302 -p1
-%patch -P 314 -p1
+#%patch -P 314 -p1
 %patch -P 315 -p1
 
 # copy a paw include file to include directory (debian
 # 317-copy-converter.h-to-installed-headers-dir.sh.dpatch)
-cp src/pawlib/paw/tree/converter.h src/pawlib/paw/paw/
+# not in 2006
+#cp src/pawlib/paw/tree/converter.h src/pawlib/paw/paw/
 
 %patch -P 318 -p1
 %patch -P 319 -p1
 %patch -P 32001 -p1
 %patch -P 32002 -p1
-%patch -P 321 -p1
+%patch -P 32101 -p1
+%patch -P 32102 -p1
 
 %patch -P 600 -p1
 
@@ -595,6 +616,7 @@
 popd
 
 %patch -P 705 -p1
+%patch -P 706 -p1
 
 %patch -P 800 -p1
 %patch -P 80101 -p1
@@ -616,14 +638,16 @@
 %patch -P 80603 -p1
 %patch -P 80604 -p1
 
-%patch -P 1504 -p1
-%patch -P 1505 -p1
-%patch -P 1506 -p1
+%patch -P 1504 -p2 -b .np_flags
+#%patch -P 1505 -p1
+%patch -P 1506 -p2 -b .curdir
 
-%patch -P 1200
 %patch -P 1201
-%patch -P 1203
-%patch -P 1204
+#%patch -P 1203
+#%patch -P 1204
+%patch -P 1208 -p2 -b .test
+%patch -P 1210 -p2 -b .segf_eudtest
+%patch -P 1209 -p2 -b .soname
 
 # remove CVS directories
 find . -depth -type d -name CVS -exec rm -rf {} ';' 
@@ -652,6 +676,14 @@
 LIB_SONAME=1
 export LIB_SONAME
 
+# add something in the soname to avoid binaries linked against g77-compiled
+# library to be linked against gfortran-compiled libraries, as the ABI is 
+# incompatible for functions.
+%if %{with gfortran}
+TOOL_SONAME=_gfortran
+export TOOL_SONAME
+%endif
+
 # set the CERN and CERN_LEVEL environment variables in shell scripts
 # meant to go to /etc/profile.d
 sed -e 's/==CERN_LEVEL==/%{version}/' -e 's:==CERN==:%{_libdir}/cernlib:' %{SOURCE100} > cernlib-%{version}.sh
@@ -666,11 +698,6 @@
 sed -e 's/#.*//g' -e '/^[[:space:]]*$$/d' %{SOURCE201} | \
     sort | uniq >> debian-copyright
 
-# copy xsneut.data in 2005/share/lib, where geant expects it to be
-# there is a link from 2005/lib
-mkdir -p %{version}/share/lib
-cp %{SOURCE16} %{version}/share/lib
-
 cd $CERN_ROOT
 
 # substitude the right defaults in the scripts
@@ -684,7 +711,9 @@
 
 # substitute DATADIR in source files to conform to FHS
 sed -i -e 's:DATADIR:%{_datadir}/cernlib/%{version}:' \
-  src/geant321/miface/gmorin.F src/mclibs/cojets/test/test.F src/mclibs/eurodec/eurodec/eufiles.inc src/mclibs/isajet/test/isajett.F
+  src/geant321/miface/gmorin.F 
+# don't correct datadir in test files or header used in tests
+#src/mclibs/cojets/test/test.F src/mclibs/eurodec/eurodec/eufiles.inc src/mclibs/isajet/test/isajett.F
 
 # substitute bindir in ylist and yindex to conform to FHS
 sed -i -e 's:\$CERN/patchy/\$PATCHY_VERSION/bin:%{_bindir}:' ../patchy/ylist ../patchy/yindex
@@ -696,11 +725,12 @@
 # script for dynamic libraries support
 # remove -lg2c to the link commands, because libg2c.so isn't available, 
 # it is found by g77/gfortran if needed
-mv src/scripts/cernlib bin/cernlib-static
+mv src/scripts/cernlib src/scripts/cernlib-static
+%{__install} -p -m755 src/scripts/cernlib-static bin/cernlib-static
 sed -e 's:@PREFIX@:%{_prefix}:g' \
   -e 's:@LIBPREFIX@:%{_libdir}/cernlib/%{version}:g' \
   -e 's/-lg2c//' \
-  ../cernlib-2005.dfsg/debian/add-ons/bin/cernlib.in > src/scripts/cernlib
+  ../cernlib-2006.dfsg/debian/add-ons/bin/cernlib.in > src/scripts/cernlib
 chmod 0755 src/scripts/cernlib
 
 # install mkdirhier which is needed to make directories
@@ -711,44 +741,44 @@
 FC_OPTFLAGS="%{optflags}"
 FC_COMPILER=gfortran
 %else
-# optflags are different for g77, so use hopefully sane defaults without
-# arch options
-FC_OPTFLAGS='-O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fasynchronous-unwind-tables'
+# optflags are different for g77, so we remove problematic flags
+FC_OPTFLAGS=`echo "%optflags" | sed -e 's/-mtune=[^ ]\+//' -e 's/-fstack-protector//' -e 's/--param=ssp-buffer-size=[^ ]\+//'`
 FC_COMPILER=g77
 %endif
 
-# Create the top level Makefile with imake
 PATHSAVE=$PATH
 # Build patchy version 4
 pushd ../patchy
 %if %{with gfortran}
         sed -i.gfortran -e 's/f77/gfortran/' fcasplit.f p4boot.sh
 %endif
-        sed -i.optflags -e 's/FOPT \+=.*/FOPT = "'"$FC_OPTFLAGS"'"/' p4boot.sh
+        sed -i.optflags -e 's/FOPT \+=.*/FOPT = "'"$FC_OPTFLAGS"'"/' \
+                 -e 's/COPT  \+=.*/COPT = "%{optflags}"/' p4boot.sh
 #        export PATH="$CERN/patchy:$CERN/patchy/p4sub:$PATH" 
         export PATH=".:..:$PATH" 
         p4boot.sh 0
 popd
-# copy patchy executables in bin
-find ../patchy -name y* -a -perm -755 -exec install {} bin ';'
 export PATH=$PATHSAVE
 
-
 # pass informations to the build system through host.def
 echo '#define DefaultCDebugFlags %{optflags}' >> ${CVSCOSRC}/config/host.def
 
 %if %{with gfortran}
-echo '#define HasGFortran YES' >> ${CVSCOSRC}/config/host.def
+echo '#define Hasgfortran YES' >> ${CVSCOSRC}/config/host.def
 %endif
 echo "#define FortranDebugFlags $FC_OPTFLAGS" >> ${CVSCOSRC}/config/host.def
+# keep timestamps
+echo "#define InstallCmd %{__install} -p" >> ${CVSCOSRC}/config/host.def
+# don't strip executables
+echo "#define InstPgmFlags -m 0755" >> ${CVSCOSRC}/config/host.def
 
+# Create the top level Makefile with imake
 cd $CERN_ROOT/build
 $CVSCOSRC/config/imake_boot
 
 # Install kuipc and the scripts (cernlib, paw and gxint) in $CERN_ROOT/bin
 
 make %{?_smp_mflags} bin/kuipc
-make patchy/Makefile
 make scripts/Makefile
 cd scripts
 make install.bin
@@ -769,22 +799,39 @@
 mv bin/paw++ bin/paw++.dynamic
 
 # Build static paw
-# optflags shouldn't be needed during linking
-$FC_COMPILER $CERN_ROOT/build/pawlib/paw/programs/0pamain.o \
+$FC_COMPILER $FC_OPTFLAGS $CERN_ROOT/build/pawlib/paw/programs/0pamain.o \
   `cernlib -G X11 pawlib` -Wl,-E -o bin/pawX11
-$FC_COMPILER $CERN_ROOT/build/pawlib/paw/programs/0pamainm.o \
+$FC_COMPILER $FC_OPTFLAGS $CERN_ROOT/build/pawlib/paw/programs/0pamainm.o \
   `cernlib -G Motif pawlib` -Wl,-E -o bin/paw++
 
 # Build packlib
 cd $CERN_ROOT/build/packlib
 make %{?_smp_mflags} install.bin
 
+# bootstrap npatchy
+mkdir -p $CERN_ROOT/build/p5boot
+cd $CERN_ROOT/build/p5boot
+cp -p -r $CERN_ROOT/src/p5boot/* .
+# there is a main program in this file, so the file is removed.
+rm p5lib/nsynopt.f
+$FC_COMPILER $FC_OPTFLAGS -o nypatchy nypatchy.f p5lib/*.f  $CERN_ROOT/lib/libkernlib.a
+ln -s $CERN_ROOT/build/p5boot/nypatchy $CERN_ROOT/bin/ypatchy
+
 # Build npatchy
-# The build of patchy is completly messed up on ppc
-%ifnarch ppc
-cd $CERN_ROOT/build/patchy
-make %{?_smp_mflags} install.bin
+#%ifnarch ppc
+%if %{with gfortran}
+        sed -i.gfortran -e 's/g77/gfortran/' $CERN_ROOT/src/patchy/fcasplit.F
 %endif
+cd $CERN_ROOT/build
+make patchy/Makefile
+cd patchy
+make %{?_smp_mflags} install.bin
+#%endif
+
+# it is not completly obvious that it is better to use patchy 4 for 
+# ypatchy, but that's what we do. In any case it should be replaced by a
+# link to the final npatchy
+rm $CERN_ROOT/bin/ypatchy
 
 %install
 
@@ -795,17 +842,20 @@
 %{__install} -p -m644 cernlib-%{version}.csh %{buildroot}%{_sysconfdir}/profile.d
 
 %{__install} -d -m755 cfortran/Examples
-%{__install} -m644 %{version}/src/cfortran/Examples/*.c cfortran/Examples/
+%{__install} -p -m644 %{version}/src/cfortran/Examples/*.c cfortran/Examples/
 
 %{__install} -d -m755 %{buildroot}%{_datadir}/aclocal
 %{__install} -p -m644 cernlib.m4 %{buildroot}%{_datadir}/aclocal/cernlib.m4
 
+# copy patchy executables in bin. Keep the timestamps for the scripts.
+%{__install} -d -m755 %{buildroot}%{_bindir}/
+find patchy -name y* -a -perm -755 -exec %{__install} -p -m755 {} %{buildroot}%{_bindir} ';'
+
 cd %{version}
 %{__install} -d -m755 %{buildroot}%{_libdir}/cernlib/%{version}/lib
 %{__install} -d -m755 %{buildroot}%{_datadir}/cernlib/%{version}
 %{__install} -d -m755 %{buildroot}%{_includedir}/cernlib/%{version}
 %{__install} -d -m755 %{buildroot}%{_includedir}/cernlib/%{version}/cfortran
-%{__install} -d -m755 %{buildroot}%{_bindir}/
 
 %{__install} -p -m644 lib/*.dat %{buildroot}%{_datadir}/cernlib/%{version}
 %{__install} -p -m644 lib/gxint321.f %{buildroot}%{_includedir}/cernlib/%{version}
@@ -821,7 +871,7 @@
 (cd lib && tar cf - *.a) | (cd %{buildroot}%{_libdir}/cernlib/%{version}/lib && tar xf -)
 (cd shlib && tar cf - *.so*) | (cd %{buildroot}%{_libdir}/cernlib/%{version}/lib && tar xf -)
 
-rm -f %{buildroot}%{_bindir}/mkdirhier
+rm %{buildroot}%{_bindir}/mkdirhier
 
 # add links for cfortran header files in the top include directory
 pushd %{buildroot}%{_includedir}/cernlib/%{version}
@@ -840,11 +890,71 @@
    cp -Rp $dir $base_include/
 done
 
+# substitute the path in installed eufiles.inc, not in in-source
+# file, because in-source the relative path is required for test
+sed -i -e 's:eurodec.dat:%{_datadir}/cernlib/%{version}/eurodec.dat:' \
+  %{buildroot}%{_includedir}/cernlib/%{version}/eurodec/eufiles.inc
+
+# install the tree.h and converter.h include files redirecting to 
+# system headers
+%{__install} -p -m644 ../../paw-2.14.04.dfsg/debian/add-ons/paw/*.h %{buildroot}%{_includedir}/cernlib/%{version}/paw
+
+# remove the patch backup files
+rm %{buildroot}%{_includedir}/cernlib/%{version}/kuip/kstring.h.*
+
 %{__install} -d -m755 %{buildroot}/etc/ld.so.conf.d
 echo %{_libdir}/cernlib/%{version}/lib > %{buildroot}/etc/ld.so.conf.d/cernlib-%{version}-%{_arch}.conf
 
+%{__install} -d -m755 %{buildroot}/%{_mandir}/man1
+%{__install} -p -m644 man/man1/cernlib.1 %{buildroot}/%{_mandir}/man1/cernlib-static.1
+for cernlib_manpage in cernlib.1 kxterm.1 dzedit.1 dzeX11.1 kuipc.1 kuesvr.1 zftp.1 gxint.1 paw.1 paw++.1 pawX11.1; do
+	%{__install} -p -m644 ../../*/debian/add-ons/manpages/$cernlib_manpage %{buildroot}/%{_mandir}/man1/
+done
+
+%{__install} -d -m755 %{buildroot}/%{_mandir}/man8
+for cernlib_manpage in pawserv.8 zserv.8; do
+	%{__install} -p -m644 ../../*/debian/add-ons/manpages/$cernlib_manpage %{buildroot}/%{_mandir}/man8/
+done
+
+%{__install} -d -m755 %{buildroot}/%{_datadir}/X11/app-defaults
+%{__install} -p -m644 ../../*/debian/add-ons/app-defaults/* %{buildroot}/%{_datadir}/X11/app-defaults/
+
+desktop-file-install --vendor="fedora"               \
+  --dir=%{buildroot}/%{_datadir}/applications         \
+  ../../paw*/debian/add-ons/misc/paw++.desktop
+
+%{__install} -d -m755 %{buildroot}/%{_datadir}/pixmaps
+%{__install} -d -m755 %{buildroot}/%{_datadir}/icons/hicolor/{48x48,32x32}/apps/
+%{__install} -p -m644 ../../*/debian/add-ons/icons/*.xpm %{buildroot}/%{_datadir}/pixmaps/
+%{__install} -p -m644 ../../paw*/debian/add-ons/icons/paw32x32.xpm %{buildroot}/%{_datadir}/icons/hicolor/32x32/apps/paw.xpm
+%{__install} -p -m644 ../../paw*/debian/add-ons/icons/paw48x48.xpm %{buildroot}/%{_datadir}/icons/hicolor/48x48/apps/paw.xpm
+
 find %{buildroot}%{_includedir}/cernlib/%{version} -name Imakefile -exec rm -f \{\} \;
-rm -f %{buildroot}%{_includedir}/cernlib/%{version}/ntuple/*.c
+rm %{buildroot}%{_includedir}/cernlib/%{version}/ntuple/*.c
+
+%check
+CERN=$RPM_BUILD_DIR/cernlib-%{version}
+CERN_LEVEL=%{version}
+CERN_ROOT=$CERN/$CERN_LEVEL
+CVSCOSRC=$CERN/$CERN_LEVEL/src
+PATH=$CERN_ROOT/bin:$PATH
+
+export CERN
+export CERN_LEVEL
+export CERN_ROOT
+export CVSCOSRC
+export PATH
+
+export LD_LIBRARY_PATH=$CERN_ROOT/shlib/
+
+# cannot make out-of build test because of the data files
+cd $CERN_ROOT/build
+
+# no test in code_motif paw_motif scripts patchy pawlib
+for dir in graflib mclibs geant321 kernlib mathlib packlib phtools; do
+make -C $dir test
+done
+
 
 %clean
 rm -rf %{buildroot}
@@ -853,8 +963,21 @@
 
 %postun -p /sbin/ldconfig
 
+%post -n paw
+touch --no-create %{_datadir}/icons/hicolor || :
+%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
+
+%postun -n paw
+touch --no-create %{_datadir}/icons/hicolor || :
+%{_bindir}/gtk-update-icon-cache --quiet %{_datadir}/icons/hicolor || :
+
 %files
 %defattr(-,root,root,-)
+%doc cernlib.README debian-copyright
+%doc geant321-3.21.14.dfsg/debian/debhelper/geant321.README.debian 
+%doc mclibs-2006.dfsg/debian/debhelper/libpdflib804-2-dev.README.debian
+%doc mclibs-2006.dfsg/debian/debhelper/montecarlo-base.README.debian
+%doc cernlib-2006.dfsg/debian/add-ons/vim/
 /etc/ld.so.conf.d/*
 %dir %{_libdir}/cernlib/
 %dir %{_libdir}/cernlib/%{version}
@@ -862,48 +985,59 @@
 %dir %{_libdir}/cernlib/%{version}/bin
 %{_libdir}/cernlib/%{version}/lib/*.so.*
 %{_datadir}/cernlib/
-%doc cernlib.README debian-copyright
-%doc geant321-3.21.14.dfsg/debian/debhelper/geant321.README.debian 
-%doc mclibs-2005.dfsg/debian/debhelper/libpdflib804-2-dev.README.debian
-%doc mclibs-2005.dfsg/debian/debhelper/montecarlo-base.README.debian
 
 # the utils and devel are separated to have the possibility to install
 # parallel versions of the library
 %files devel
 %defattr(-,root,root,-)
+%doc cfortran paw-*/debian/add-ons/misc/comis-64bit-example.F
+# it is not necessary to put the static libs in a subpackage, since the
+# utils package would require it anyway. Moreover cernlib users expect
+# static libs to be present.
 %{_libdir}/cernlib/%{version}/lib/*.a
 %{_libdir}/cernlib/%{version}/lib/*.so
 %{_includedir}/cernlib/
 %{_datadir}/aclocal/cernlib.m4
-%doc cfortran 
 
 %files utils
 %defattr(-,root,root,-)
 %{_bindir}/cernlib*
 %{_sysconfdir}/profile.d/cernlib-%{version}.sh
 %{_sysconfdir}/profile.d/cernlib-%{version}.csh
+%{_mandir}/man1/cernlib*.1*
 
 %files -n paw
 %defattr(-,root,root,-)
+%doc paw.README
 %{_bindir}/paw++
 %{_bindir}/paw
 %{_bindir}/pawX11
 %{_bindir}/pawX11.dynamic
 %{_bindir}/paw++.dynamic
+# paw doesn't depend on the main package, so it must own the dirs
+%dir %{_libdir}/cernlib/%{version}
 %dir %{_libdir}/cernlib/%{version}/bin
 %{_libdir}/cernlib/%{version}/bin/pawX11
-%doc paw.README 
+%{_datadir}/X11/app-defaults/*Paw++
+%{_datadir}/icons/hicolor/
+%{_mandir}/man1/paw*.1*
+%{_datadir}/applications/*paw*.desktop
+%{_datadir}/pixmaps/paw*.xpm
 
 %files -n geant321
 %defattr(-,root,root,-)
 %{_bindir}/gxint
+%{_datadir}/X11/app-defaults/*Geant++
+%{_mandir}/man1/gxint.1*
 
 %files -n kuipc
 %defattr(-,root,root,-)
 %{_bindir}/kuipc
+%{_mandir}/man1/kuipc.1*
 
 %files packlib
 %defattr(-,root,root,-)
+%doc cernlib-2006.dfsg/debian/debhelper/zftp.README.debian
 %{_bindir}/cdbackup
 %{_bindir}/cdserv
 %{_bindir}/fatmen
@@ -919,11 +1053,17 @@
 %{_bindir}/hepdb
 %{_bindir}/kxterm
 %{_bindir}/zftp
-%doc cernlib-2005.dfsg/debian/debhelper/zftp.README.debian
+%{_datadir}/X11/app-defaults/KXterm
+%{_datadir}/pixmaps/kxterm*.xpm
+%{_mandir}/man1/kxterm.1* 
+%{_mandir}/man1/dze*.1*
+%{_mandir}/man1/kuesvr.1* 
+%{_mandir}/man1/zftp.1*
+%{_mandir}/man8/*.8*
 
 %files -n patchy
 %defattr(-,root,root,-)
-%ifnarch ppc
+#%ifnarch ppc
 %{_bindir}/fcasplit
 %{_bindir}/nycheck
 %{_bindir}/nydiff
@@ -935,7 +1075,7 @@
 %{_bindir}/nysynopt
 %{_bindir}/nytidy
 %{_bindir}/yexpand
-%endif
+#%endif
 %{_bindir}/ycompar
 %{_bindir}/yedit
 %{_bindir}/yfrceta
@@ -952,6 +1092,16 @@
 
 
 %changelog
+* Fri Apr 13 2007 Patrice Dumas <pertusus at free.fr> 2006-1
+- update to cernlib 2006
+- build with gfortran
+- use system Xbae and Xaw
+- ship man pages, app-defaults, icons and paw++ desktop file (from debian)
+- run tests
+- use optflags in patchy4
+- bootstrap npatchy with p5boot (instead of using patchy4)
+- fix npatchy build
+
 * Tue Dec 19 2006 Patrice Dumas <pertusus at free.fr> 2005-27
 - add support for gfortran (not enabled, lshift missing in fedora gfortran)
 - use fedora compiler flags when possible


Index: geant321-001-fix-missing-fluka.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/geant321-001-fix-missing-fluka.dpatch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- geant321-001-fix-missing-fluka.dpatch	1 Sep 2006 13:15:22 -0000	1.1
+++ geant321-001-fix-missing-fluka.dpatch	21 Apr 2007 14:35:24 -0000	1.2
@@ -5,9 +5,9 @@
 ## DP: Deal with FLUKA code having been purged from Debian's Cernlib source.
 
 @DPATCH@
-diff -urNad cernlib-2005.05.09.dfsg~/src/geant321/Imakefile cernlib-2005.05.09.dfsg/src/geant321/Imakefile
---- cernlib-2005.05.09.dfsg~/src/geant321/Imakefile	1998-03-05 11:20:07.000000000 +0000
-+++ cernlib-2005.05.09.dfsg/src/geant321/Imakefile	2005-11-23 17:41:29.886310858 +0000
+diff -urNad geant321-3.21.14~/src/geant321/Imakefile geant321-3.21.14/src/geant321/Imakefile
+--- geant321-3.21.14~/src/geant321/Imakefile	1998-03-05 06:20:07.000000000 -0500
++++ geant321-3.21.14/src/geant321/Imakefile	2007-01-30 17:37:26.209615233 -0500
 @@ -4,10 +4,11 @@
  
  AllTarget(geant321)
@@ -35,9 +35,29 @@
  
  /* This will install the correct link for xsneut95.dat at CERN;
   * If you want a local copy of the file, just copy it there
-diff -urNad cernlib-2005.05.09.dfsg~/src/geant321/miface/Imakefile cernlib-2005.05.09.dfsg/src/geant321/miface/Imakefile
---- cernlib-2005.05.09.dfsg~/src/geant321/miface/Imakefile	1995-10-24 10:21:53.000000000 +0000
-+++ cernlib-2005.05.09.dfsg/src/geant321/miface/Imakefile	2005-11-23 17:41:52.230563421 +0000
+diff -urNad geant321-3.21.14~/src/geant321/geant321/gcnmec.inc geant321-3.21.14/src/geant321/geant321/gcnmec.inc
+--- geant321-3.21.14~/src/geant321/geant321/gcnmec.inc	1995-10-24 06:20:31.000000000 -0400
++++ geant321-3.21.14/src/geant321/geant321/gcnmec.inc	2007-01-30 17:39:15.301513801 -0500
+@@ -16,13 +16,14 @@
+       PARAMETER(NMECA=45,IBLOWN=23)
+       CHARACTER*4 CHNMEC(NMECA)
+ *
+-* *** Two blank spaces for FISF and CAPF which do not exist
++* *** Null out all FLUKA mechanisms since we've removed FLUKA code
++* *** for DFSG reasons.  -- Kevin McCarty, for Debian
+ *
+ * *** The low-neutron cross-sections have to be at the end for the
+ * *** logics of the routine to work, and they have to start at
+ * *** IBLOWN
+       DATA CHNMEC /
+-     +     'HADF',  'INEF',  'ELAF',  'NULL',  'NULL',
++     +     'NULL',  'NULL',  'NULL',  'NULL',  'NULL',
+      +     'HADG',  'INEG',  'ELAG',  'FISG',  'CAPG',
+      +     'LOSS',  'PHOT',  'ANNI',  'COMP',  'BREM',
+      +     'PAIR',  'DRAY',  'PFIS',  'RAYL',  'MUNU',
+diff -urNad geant321-3.21.14~/src/geant321/miface/Imakefile geant321-3.21.14/src/geant321/miface/Imakefile
+--- geant321-3.21.14~/src/geant321/miface/Imakefile	1995-10-24 06:21:53.000000000 -0400
++++ geant321-3.21.14/src/geant321/miface/Imakefile	2007-01-30 17:37:26.319591944 -0500
 @@ -1,5 +1,5 @@
  SRCS_F= \ @@\
 -	 gfmdis.F gfmfin.F gmicap.F gmiset.F gmorin.F gmplxs.F gmxsec.F


Index: mclibs-102-dont-optimize-some-code.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/mclibs-102-dont-optimize-some-code.dpatch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- mclibs-102-dont-optimize-some-code.dpatch	1 Sep 2006 13:15:22 -0000	1.1
+++ mclibs-102-dont-optimize-some-code.dpatch	21 Apr 2007 14:35:24 -0000	1.2
@@ -6,9 +6,9 @@
 ## DP: (either compiler crash or broken code generation).
 
 @DPATCH@
-diff -urNad cernlib-2005.05.09/src/mclibs/isajet/isatape/Imakefile /tmp/dpep.hNz5sX/cernlib-2005.05.09/src/mclibs/isajet/isatape/Imakefile
---- cernlib-2005.05.09/src/mclibs/isajet/isatape/Imakefile	1996-05-06 11:19:44.000000000 -0400
-+++ /tmp/dpep.hNz5sX/cernlib-2005.05.09/src/mclibs/isajet/isatape/Imakefile	2005-06-09 11:16:58.039286811 -0400
+diff -urNad mclibs-2006.dfsg~/src/mclibs/isajet/isatape/Imakefile mclibs-2006.dfsg/src/mclibs/isajet/isatape/Imakefile
+--- mclibs-2006.dfsg~/src/mclibs/isajet/isatape/Imakefile	1996-05-06 11:19:44.000000000 -0400
++++ mclibs-2006.dfsg/src/mclibs/isajet/isatape/Imakefile	2007-01-19 17:35:47.210374125 -0500
 @@ -4,4 +4,8 @@
  
  FORTRANSAVEOPTION = FortranSaveFlags
@@ -18,10 +18,10 @@
 +#endif
 +
  SubdirLibraryTarget(NullParameter,NullParameter)
-diff -urNad cernlib-2005.05.09/src/mclibs/pdf/spdf/Imakefile /tmp/dpep.hNz5sX/cernlib-2005.05.09/src/mclibs/pdf/spdf/Imakefile
---- cernlib-2005.05.09/src/mclibs/pdf/spdf/Imakefile	2000-04-19 09:51:56.000000000 -0400
-+++ /tmp/dpep.hNz5sX/cernlib-2005.05.09/src/mclibs/pdf/spdf/Imakefile	2005-06-09 11:22:02.812494322 -0400
-@@ -97,4 +97,10 @@
+diff -urNad mclibs-2006.dfsg~/src/mclibs/pdf/spdf/Imakefile mclibs-2006.dfsg/src/mclibs/pdf/spdf/Imakefile
+--- mclibs-2006.dfsg~/src/mclibs/pdf/spdf/Imakefile	2006-09-04 08:32:57.000000000 -0400
++++ mclibs-2006.dfsg/src/mclibs/pdf/spdf/Imakefile	2007-01-19 17:35:47.211373912 -0500
+@@ -101,4 +101,10 @@
  #ifdef CERNLIB_HPUX
  FORTRANOPTIONS += '-WF,-P'
  #endif


Index: mclibs-206-herwig-uses-DBLE-not-REAL.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/mclibs-206-herwig-uses-DBLE-not-REAL.dpatch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- mclibs-206-herwig-uses-DBLE-not-REAL.dpatch	1 Sep 2006 13:15:22 -0000	1.1
+++ mclibs-206-herwig-uses-DBLE-not-REAL.dpatch	21 Apr 2007 14:35:24 -0000	1.2
@@ -5,27 +5,27 @@
 ## DP: Have libherwig use double precision consistently
 
 @DPATCH@
-diff -urNad cernlib-2005.05.09/src/mclibs/herwig/code/hwhiga.F /tmp/dpep.1kYOCO/cernlib-2005.05.09/src/mclibs/herwig/code/hwhiga.F
---- cernlib-2005.05.09/src/mclibs/herwig/code/hwhiga.F	1996-12-03 09:16:56.000000000 -0500
-+++ /tmp/dpep.1kYOCO/cernlib-2005.05.09/src/mclibs/herwig/code/hwhiga.F	2005-06-09 15:22:00.263743792 -0400
+diff -urNad mclibs-2006.dfsg~/src/mclibs/herwig/code/hwhiga.F mclibs-2006.dfsg/src/mclibs/herwig/code/hwhiga.F
+--- mclibs-2006.dfsg~/src/mclibs/herwig/code/hwhiga.F	2006-09-04 08:32:57.000000000 -0400
++++ mclibs-2006.dfsg/src/mclibs/herwig/code/hwhiga.F	2007-01-19 17:39:10.154251922 -0500
 @@ -72,7 +72,7 @@
        TAMP(6)=HWHIG5(T,S,U,EMH2,EMQ2,2,0,5,0,0,0)
        TAMP(7)=HWHIG5(U,T,S,EMH2,EMQ2,3,0,6,0,0,0)
        DO 20 I=1,7
 -      TAMPI(I)= REAL(TAMP(I))
 +      TAMPI(I)= DBLE(TAMP(I))
+ #if !defined(CERNLIB_GFORTRAN)
    20  TAMPR(I)=-IMAG(TAMP(I))
- C Square and add prefactors
-       WTGG=0.03125*FLOAT(NCOLO*(NCOLO**2-1))
-diff -urNad cernlib-2005.05.09/src/mclibs/herwig/code/hwuli2.F /tmp/dpep.1kYOCO/cernlib-2005.05.09/src/mclibs/herwig/code/hwuli2.F
---- cernlib-2005.05.09/src/mclibs/herwig/code/hwuli2.F	1996-12-03 09:17:04.000000000 -0500
-+++ /tmp/dpep.1kYOCO/cernlib-2005.05.09/src/mclibs/herwig/code/hwuli2.F	2005-06-09 15:22:00.263743792 -0400
+ #else
+diff -urNad mclibs-2006.dfsg~/src/mclibs/herwig/code/hwuli2.F mclibs-2006.dfsg/src/mclibs/herwig/code/hwuli2.F
+--- mclibs-2006.dfsg~/src/mclibs/herwig/code/hwuli2.F	2006-09-04 08:32:57.000000000 -0400
++++ mclibs-2006.dfsg/src/mclibs/herwig/code/hwuli2.F	2007-01-19 17:39:27.722516271 -0500
 @@ -18,7 +18,7 @@
       &  1.644934066848226D0/
        PROD(Y,Y2)=Y*(ONE+A1*Y*(ONE+A2*Y*(ONE+A3*Y2*(ONE+A4*Y2*(ONE+A5*Y2*
       & (ONE+A6*Y2*(ONE+A7*Y2*(ONE+A8*Y2*(ONE+A9*Y2*(ONE+A10*Y2))))))))))
 -      XR=REAL(X)
 +      XR=DBLE(X)
+ #if !defined(CERNLIB_GFORTRAN)
        XI=IMAG(X)
-       R2=XR*XR+XI*XI
-       IF (R2.GT.ONE.AND.(XR/R2).GT.HALF) THEN
+ #else


Index: paw-119-fix-compiler-warnings.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/paw-119-fix-compiler-warnings.dpatch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- paw-119-fix-compiler-warnings.dpatch	11 Sep 2006 22:32:35 -0000	1.1
+++ paw-119-fix-compiler-warnings.dpatch	21 Apr 2007 14:35:24 -0000	1.2
@@ -5,9 +5,51 @@
 ## DP: Fix a number of compiler warnings.  Courtesy of Harald Vogt.
 
 @DPATCH@
+diff -urNad paw-2.14.04~/src/pawlib/paw/ntuple/cern_types.h paw-2.14.04/src/pawlib/paw/ntuple/cern_types.h
+--- paw-2.14.04~/src/pawlib/paw/ntuple/cern_types.h	1996-04-23 14:37:54.000000000 -0400
++++ paw-2.14.04/src/pawlib/paw/ntuple/cern_types.h	2006-09-08 14:58:22.811814451 -0400
+@@ -36,26 +36,38 @@
+ 
+ typedef unsigned int		UInt32;
+ 
++#ifndef UINT32_MAX
+ #define	UINT32_MAX	UINT_MAX
++#endif
+ 
+ 
+ /* typedef unsigned long long	UInt64; */
+ typedef unsigned long 		UInt64;
+ 
++#ifndef UINT64_MAX
+ #define	UINT64_MAX	ULONG_MAX
++#endif
+ 
+ 
+ typedef int			Int32;
+ 
++#ifndef INT32_MAX
+ #define	INT32_MAX	INT_MAX
++#endif
++#ifndef INT32_MIN
+ #define	INT32_MIN	INT_MIN
++#endif
+ 
+ 
+ /* typedef long long		Int64; */
+ typedef long			Int64;
+ 
++#ifndef INT64_MAX
+ #define	INT64_MAX	LONG_MAX
++#endif
++#ifndef INT64_MIN
+ #define	INT64_MIN	LONG_MIN
++#endif
+ 
+ 
+ typedef float			Float32;
 diff -urNad paw-2.14.04~/src/pawlib/paw/ntuple/qp_vvec.c paw-2.14.04/src/pawlib/paw/ntuple/qp_vvec.c
 --- paw-2.14.04~/src/pawlib/paw/ntuple/qp_vvec.c	1996-05-12 11:13:56.000000000 -0400
-+++ paw-2.14.04/src/pawlib/paw/ntuple/qp_vvec.c	2006-09-07 17:41:07.574458016 -0400
++++ paw-2.14.04/src/pawlib/paw/ntuple/qp_vvec.c	2006-09-08 14:49:56.490766940 -0400
 @@ -19,6 +19,7 @@
   */
  
@@ -18,7 +60,7 @@
  #include	"qp_vvec.h"
 diff -urNad paw-2.14.04~/src/pawlib/paw/xbae/caption.c paw-2.14.04/src/pawlib/paw/xbae/caption.c
 --- paw-2.14.04~/src/pawlib/paw/xbae/caption.c	1996-03-01 06:39:36.000000000 -0500
-+++ paw-2.14.04/src/pawlib/paw/xbae/caption.c	2006-09-07 17:41:07.576457590 -0400
++++ paw-2.14.04/src/pawlib/paw/xbae/caption.c	2006-09-08 15:05:15.658762762 -0400
 @@ -244,7 +244,7 @@
       * it will use our name as it's label.
       */
@@ -28,9 +70,18 @@
                                  xmLabelWidgetClass, (Widget)new,
                                  XmNbackground,  new->core.background_pixel,
                                  XmNforeground,  new->manager.foreground,
+@@ -613,7 +613,7 @@
+          * to handle gadgets (the Motif function always calls the gadgets
+          * resize method)
+          */
+-#if XmREVISION == 1
++#if (XmREVISION == 1) && (! defined(LESSTIF_VERSION))
+         _XmConfigureObject((RectObj)UserChild(cw),
+ #else
+         _XmConfigureObject((Widget)UserChild(cw),
 diff -urNad paw-2.14.04~/src/pawlib/paw/xbae/clip.c paw-2.14.04/src/pawlib/paw/xbae/clip.c
 --- paw-2.14.04~/src/pawlib/paw/xbae/clip.c	1996-03-01 06:39:36.000000000 -0500
-+++ paw-2.14.04/src/pawlib/paw/xbae/clip.c	2006-09-07 17:41:07.577457377 -0400
++++ paw-2.14.04/src/pawlib/paw/xbae/clip.c	2006-09-08 14:49:56.491766727 -0400
 @@ -190,8 +190,8 @@
       * XXX It might be more efficient to fake up an Expose event
       * and call Redisplay directly
@@ -44,7 +95,7 @@
                     True);
 diff -urNad paw-2.14.04~/src/pawlib/paw/xbae/matrix.c paw-2.14.04/src/pawlib/paw/xbae/matrix.c
 --- paw-2.14.04~/src/pawlib/paw/xbae/matrix.c	1998-09-02 11:23:57.000000000 -0400
-+++ paw-2.14.04/src/pawlib/paw/xbae/matrix.c	2006-09-07 17:41:07.582456313 -0400
++++ paw-2.14.04/src/pawlib/paw/xbae/matrix.c	2006-09-08 14:49:56.494766087 -0400
 @@ -67,7 +67,10 @@
  #endif
  


Index: paw-207-compile-temp-libs-with-fPIC.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/paw-207-compile-temp-libs-with-fPIC.dpatch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- paw-207-compile-temp-libs-with-fPIC.dpatch	1 Sep 2006 13:15:22 -0000	1.1
+++ paw-207-compile-temp-libs-with-fPIC.dpatch	21 Apr 2007 14:35:24 -0000	1.2
@@ -25,12 +25,3 @@
        ENDIF
        L=LENOCC(CHLINE)
        WRITE(LUNOUT,'(A)')CHLINE(:L)
-@@ -176,7 +176,7 @@
-       ENDIF
- #endif
- #if defined(CERNLIB_LINUX)
--      CHLINE=                   'ld -shared -o '
-+      CHLINE=                   'g77 -shared -o '
-      +                    // NAME(:LN) //'.sl '// NAME(:LN) //'.o'
- #endif
- #if defined(CERNLIB_ALPHA_OSF)


Index: paw-801-non-optimized-rule-uses-fPIC-g.dpatch
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/paw-801-non-optimized-rule-uses-fPIC-g.dpatch,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- paw-801-non-optimized-rule-uses-fPIC-g.dpatch	1 Sep 2006 13:15:22 -0000	1.1
+++ paw-801-non-optimized-rule-uses-fPIC-g.dpatch	21 Apr 2007 14:35:24 -0000	1.2
@@ -12,7 +12,7 @@
 @@ -3,7 +3,7 @@
  	plotisto.F pmhist.F pminit.F show_chain.F
  
- #ifdef CERNLIB_LINUX
+ #if defined(CERNLIB_LINUX) && !defined(CERNLIB_GFORTRAN)
 -FORTRANOPTIONS = -fno-backslash  $(FORTRANSAVEOPTION) -fno-second-underscore
 +FORTRANOPTIONS = -g -fno-backslash  $(FORTRANSAVEOPTION) -fno-second-underscore
  #endif


Index: sources
===================================================================
RCS file: /cvs/extras/rpms/cernlib/devel/sources,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- sources	12 Apr 2006 17:42:16 -0000	1.5
+++ sources	21 Apr 2007 14:35:24 -0000	1.6
@@ -1,16 +1,6 @@
-9d37e3c16c336d1887029227b27a42d8  src_car.tar.gz
-03bfd1239e57a23ab087bf29fe48c8a8  src_Imakefile.tar.gz
-fd20e80b3f58fc88168bcd6ce701f999  src_patchy.tar.gz
-9e686519ae3a52344222b21c9444ddd6  src_cfortran.tar.gz
-9ebd72a2b6e5349b25fc93e7b20c172a  src_include.tar.gz
-bb4e224a7713ac4b8c13598e388c17f3  src_pawlib.tar.gz
-b72b89cb3a7f7c592d28b992c95b4eff  src_config.tar.gz
-0ec66e6d4920af79999b4c73fd3b065a  src_mathlib.tar.gz
-f215b9adba3cfb3be4bd74d624f00d32  src_phtools.tar.gz
-24e2460fa61675df1cd74c7204a8d79e  src_geant321.tar.gz
-666d8a5c483c275463ebb1a3dd48c742  src_mclibs.tar.gz
-b30b121167ddf6508c22fc25a4272276  src_scripts.tar.gz
-67228b011eac13b44499c50219e21545  src_graflib.tar.gz
-4fdcdc9f819ebbb9c6d3a04f339cdcf8  src_packlib.tar.gz
-eecb52159458ead0ee6b0d00b90aab66  xsneut95.dat
+2dde98c3cbe839d07ce5dcb953f11b64  paw_2.14.04.dfsg-1.diff.gz
+1e654bb641c1a8af2ba655513665f936  mclibs_2006.dfsg-1.diff.gz
+51777e0bb52e104e3053615686f5a9be  cernlib_2006.dfsg-1.diff.gz
+ebcc69212a164a9f32f6706c26262747  geant321_3.21.14.dfsg-4.diff.gz
+fe71a3f6b95ff2151c5a4690116a0358  2006_src-free.tar.gz
 b1f550eedc545a02f0ab58eb7d550480  patchy.tar.gz


--- 211-support-amd64-and-itanium.dpatch DELETED ---


--- cernlib-113-cups-postscript-fix.dpatch DELETED ---


--- cernlib-314-permit-using-regcomp-for-re_comp.dpatch DELETED ---


--- cernlib-cernlib_kernlib.patch DELETED ---


--- cernlib-hwhiga_use_dimag.diff DELETED ---


--- cernlib-hwuli2_use_dimag.diff DELETED ---


--- cernlib_2005.dfsg-3.diff DELETED ---


--- geant321_3.21.14.dfsg-1.diff DELETED ---


--- mclibs_2005.dfsg-1.diff DELETED ---


--- patchy-case.patch DELETED ---


--- patchy-fcasplit.patch DELETED ---


--- patchy-yexpand.diff DELETED ---


--- paw_2.14.04-3.diff DELETED ---




More information about the scm-commits mailing list