Changeset 480 in Sophya


Ignore:
Timestamp:
Oct 20, 1999, 12:25:32 PM (26 years ago)
Author:
ansari
Message:

MAJ / PEIDA 3.8 , Reza 20/10/99

Location:
trunk/SophyaLib
Files:
14 edited

Legend:

Unmodified
Added
Removed
  • trunk/SophyaLib/BaseTools/history_eros

    r251 r480  
    11SysTools from LibsUtil
     2machdefs.h from machine.h defs.h
    23-----------> defs.h
    34   Repository revision: 1.21    /projects/Eros/CVSEros/LibsUtil/defs.h,v
     5   MAJ                  1.24
    46-----------> machine.h
    57   Repository revision: 1.9     /projects/Eros/CVSEros/LibsUtil/machine.h,v
     8   MAJ                  1.12
    69-----------> timing.c
    710   Repository revision: 1.2     /projects/Eros/CVSEros/LibsUtil/timing.c,v
     
    1922-----------> pdlmgr.cc
    2023   Repository revision: 1.2     /projects/Eros/CVSEros/CodeCxx/Outils/pdlmgr.cc,v
     24   MAJ                  1.6
    2125-----------> pdlmgr.h
    2226   Repository revision: 1.2     /projects/Eros/CVSEros/CodeCxx/Outils/pdlmgr.h,v
     27   MAJ                  1.4
    2328-----------> peidainit.h
    2429   Repository revision: 1.6     /projects/Eros/CVSEros/CodeCxx/Outils/peidainit.h,v
     
    2732-----------> periodic.h
    2833   Repository revision: 1.4     /projects/Eros/CVSEros/CodeCxx/Outils/periodic.h,v
     34   MAJ                  1.5
    2935-----------> perrors.h
    3036   Repository revision: 1.4     /projects/Eros/CVSEros/CodeCxx/Outils/perrors.h,v
     
    3541-----------> psighand.cc
    3642   Repository revision: 1.2     /projects/Eros/CVSEros/CodeCxx/Outils/psighand.cc,v
     43   MAJ                  1.3
    3744-----------> psighand.h
    3845   Repository revision: 1.1     /projects/Eros/CVSEros/CodeCxx/Outils/psighand.h,v
     46   MAJ                  1.2
  • trunk/SophyaLib/BaseTools/machdefs.h

    r269 r480  
    2626#endif
    2727
    28 #ifdef sun
     28#if defined(SunOS)  || defined ( sun )
    2929#define MACH_SUN
    3030#define OS_SOLARIS
     
    142142  typedef unsigned long long uint_8;
    143143
     144#ifdef powerpc
     145#define SWAP 0
     146#define SWAPDEFAUT 0
     147#else
    144148#define  SWAP 1
    145149#define  SWAPDEFAUT   1
     150#endif
    146151
    147152#elif defined(OS_MACOS)
     
    183188/*    __aCC__      : aCC on HP                                         */
    184189/*    __KCC__      : KCC, version >= 3.3 is required                   */
     190/*    __SGICC__    : SGI (IRIX64) CC compiler                          */
    185191
    186192/***********************************************************************/
     
    201207/*   HAS_IOS_NOCREATE                                                      */
    202208/*   HAS_VEC_NEW           : operator new[]                                */
     209/*   CC_HAS_RTTI_SUPPORT     has Run Time Type Identification support      */
    203210/*   ANSI_IO               : rdbuf()->pubseekoff rather than seekg         */
    204211/*   HAS_STR_NPOS          : has string::npos and not a global NPOS        */
     
    214221#ifndef COMPILER_EXCEPTIONS
    215222#define COMPILER_EXCEPTIONS
     223#endif
     224
     225#ifndef  CC_HAS_RTTI_SUPPORT
     226#define  CC_HAS_RTTI_SUPPORT
    216227#endif
    217228
     
    246257
    247258#if defined (__aCC__) 
    248 #ifndef COMPILER_EXCEPTIONS
    249 #define COMPILER_EXCEPTIONS
    250 #endif
    251259#ifndef ANSI_TEMPLATES
    252260#define ANSI_TEMPLATES
     
    258266#define STREAMPOS_IS_CLASS
    259267#define HAS_STR_NPOS
    260 #ifndef COMPILER_EXCEPTIONS
    261 #define COMPILER_EXCEPTIONS
    262 #endif
    263268#ifndef ANSI_TEMPLATES
    264269#define ANSI_TEMPLATES
    265270#endif
    266 #endif
    267 
     271/* Standard C++ library classes are in the namespace std  */
     272#ifdef __cplusplus
     273namespace std { }
     274using namespace std;
     275#endif
     276#endif
     277
     278#if defined(__SGICC__)
     279/* Standard C++ library classes are in the namespace std  */
     280#define HAS_STR_NPOS
     281#ifndef ANSI_TEMPLATES
     282#define ANSI_TEMPLATES
     283#endif
     284#ifdef __cplusplus
     285namespace std { }
     286using namespace std;
     287#endif
     288#endif
    268289
    269290/* Get things has homogeneous as possible between compilers */
  • trunk/SophyaLib/BaseTools/ppersist.h

    r269 r480  
    1212#include "pexceptions.h"
    1313#include "md5.h"
     14
     15#include <time.h>
    1416
    1517#include <string>
  • trunk/SophyaLib/Mgr/Makefile.h

    r478 r480  
    5555#### Fortran (tout ce qui est lie au Fortran est defini ici #############
    5656FC = f77
    57 ifeq ($(SITE),CCIN2P3)
    58   ifeq ($(MACHEROS),AIX)
    59     override FC := xlf
    60   endif
    61 endif
    6257ifeq (${MACHEROS},Linux)
    6358#  override FC := f77
     
    8782EXE := ${PP}/Exec/
    8883INC := ${DPCDEVREP}/Include/
    89 CCI := ${INC}/CInc/
    90 GLB := ${GNU}/${MACHEROS}/lib/
     84GLB := /usr/local/lib/
    9185#--
    9286
     
    9993ifndef DBGFLAG
    10094  DBGFLAG  := -g
     95#  Probleme sur DEC/OSF1 -g avec g++/egcs pose probleme a l'assembleur
     96#                    Reza 09/99 - On met -gcoff
     97  ifeq (${MACHEROS},OSF1)
     98    ifeq ($(CXX), g++)
     99      override DBGFLAG := -gcoff
     100    endif
     101  endif
    101102endif
    102103
     
    127128#   Avec certains compilateurs C++ (KCC, aCC) , il faut fabriquer les librairies et
    128129# les shared libs avec la meme commande
    129 override ARCXX :=
    130 ifeq ($(CXX),KCC)
    131 ARCXX  := KCC
    132 endif
     130override ARCXX := $(AR)
     131override ARCXXFLAGS := $(ARFLAGS)
     132#RZ0999 ifeq ($(CXX),KCC)
     133#RZ0999 override  ARCXX  := KCC
     134#RZ0999 override ARCXXFLAGS  := -o
     135#RZ0999 endif
    133136ifeq ($(CXX),aCC)
    134 ARCXX  := aCC
     137override ARCXX  := aCC
     138override ARCXXFLAGS  := -o
    135139endif
    136140
     
    144148#  Pour compiler PI, sous Linux, les includes et libs se trouve souvent ds /usr/X11/include /usr/X11/lib/
    145149ifeq (${MACHEROS},Linux)
    146   XLDLIBS := -L/usr/X11/lib
    147   XCFLAGS := -I/usr/X11/include
     150  XLDLIBS := -L/usr/X11/lib -L/usr/X11R6/lib
     151  XCFLAGS := -I/usr/X11/include -I/usr/X11R6/include
    148152  LDLIBS := -ldl
    149153endif
    150154
    151 # Pour RFIO
    152 ifeq ($(SITE),CCIN2P3)
    153   XCFLAGS := $(XCFLAGS) -D RFIO -I/usr/local/include/shift
    154   XLDLIBS := $(XLDLIBS) -L/usr/local/lib -lshift
    155 endif
    156 
    157 # Les bibliotheques gnu C pour le fort du CCPN
    158 ifeq ($(SITE),CCIN2P3)
    159  ifeq ($(CC), gcc)
    160   ifeq ($(MACHEROS),HP-UX)
    161      FGLIB := -L/usr/local/lib/gcc-lib/hppa1.1-hp-hpux9.05/2.7.2.1 -lgcc
    162   endif
    163   ifeq ($(MACHEROS),AIX)
    164      FGLIB := -L/usr/local/lib/gcc-lib/rs6000-ibm-aix3.2.5/2.7.2.1 -lgcc
    165   endif
    166  endif
    167 endif
    168155
    169156# Chemin pour la librairie cfitsio
     
    180167#endif
    181168
    182 CPPFLAGS     :=  -I${INC} -I$(FITSIOREP) -D${MACHEROSD} -I$(INC)/tnt $(MODULECPPFLAGS)
     169CPPFLAGS     :=  -I${INC} -I$(FITSIOREP) -D${MACHEROSD} $(MODULECPPFLAGS)
    183170
    184171# Les options selon les divers compilateurs
     
    256243endif
    257244
    258 #gcc sur Solaris
    259 ifeq ($(MACHEROS),SunOS)
    260  override NOSHLIB := Y
    261 endif
    262245
    263246ifeq ($(CXX), cxx)
     
    338321endif
    339322
    340 
    341 #  Compilateur KAI
     323# --- Compilateur KAI  (OK pour v 3.3)
    342324ifeq ($(CXX), KCC)
    343325  CXXFLAGS     :=  --exceptions --rtti  --auto_instantiation --one_instantiation_per_object -D__KCC__
     
    346328endif
    347329
     330# --- Compilateur natif CC de SGI
     331ifeq ($(MACHEROS), IRIX64)
     332  ifeq ($(CXX), CC)
     333    CXXFLAGS     :=  -prelink -D__SGICC__
     334  endif
     335endif
     336
    348337# Autres compilateurs natifs.
    349338
  • trunk/SophyaLib/Mgr/Makefile.slb

    r478 r480  
    66slbpi: slb $(SLB)libPI.so
    77
     8#  Chemin des librairies Motifs / X11 (pour chemin non standard)
     9LIBXPATH :=
    810#  Commande de construction de shared-lib
    911CMDSHL := ld -partage
     
    1921CMDTILSHL := echo 'Cas Non Prevu'
    2022CMDTILSHLPI := echo 'Cas Non Prevu'
    21 #  Chemin des librairies Motifs / X11 (pour chemin non standard)
    22 LIBXPATH :=
     23# Utilisation du compilo C++ comme driver pour fabrication des shared-libs
     24CMDSHLCXX := $(LINK.cc)
     25FGSHLACXX := 
     26FGSHLNCXX :=
     27#  S'il faut utiliser $(CMDSHLCXX) pour fabrication des shared-libs
     28USECXX4SO := N
     29# On utilise le compilo g++ pour la fabrication des shared libs
     30ifeq ($(EROSCXX), g++)
     31  override USECXX4SO := Y
     32  override CMDSHLCXX := $(LINK.cc) -shared
     33endif
     34
     35# On utilise le compilo KCC pour la fabrication des shared libs
     36ifeq ($(EROSCXX), KCC)
     37  override USECXX4SO := Y
     38  override CMDSHLCXX := $(LINK.cc)
     39endif
     40
     41# On utilise le compilo aCC (HP) pour la fabrication des shared libs
     42ifeq ($(EROSCXX), aCC)
     43  override USECXX4SO := Y
     44  override CMDSHLCXX := $(LINK.cc) -b
     45endif
    2346
    2447# Construction de shared-libs sous OSF1
     
    3861    override TILSHLPI :=
    3962    override CMDTILSHLPI := echo 'No Template instanciation library'
     63    override USECXX4SO := N
    4064  endif
     65#  Attention - Dangereux de mettre -expect_unresolved , $CHECK$  Reza 20/10/99
    4166  override CMDSHLCXX := $(LINK.cc) -shared -expect_unresolved '*'
    4267  override FGSHLACXX :=
     
    5075  override FGSHLN := --no-whole-archiv
    5176  override CMDSHLCXX := $(LINK.cc) -shared
     77  ifeq ($(EROSCXX), KCC)
     78    override CMDSHLCXX := $(LINK.cc)
     79  endif
    5280  override FGSHLACXX :=
    5381  override FGSHLNCXX :=
     
    5583  override TILSHL :=
    5684  override CMDTILSHL := echo 'No Template instanciation library'
     85  override LIBXPATH := -L/usr/X11/lib -L/usr/X11R6/lib
     86endif
     87
     88# Construction de shared-libs sous Sun-OS
     89ifeq ($(MACHEROS),SunOS)
     90  override CMDSHL := ld -G
     91  override FGSHLA := -z allextract
     92  override FGSHLN := -z weakextract
     93  override LIBLSHL := $(LIBG) -lm -lc
     94  override TILSHL :=
     95  override CMDTILSHL := echo 'No Template instanciation library'
    5796  override LIBXPATH := -L/usr/X11/lib
     97  override USECXX4SO := Y
     98endif
     99
     100# Construction de shared-libs sous SGI
     101ifeq ($(MACHEROS), IRIX64)
     102  override CMDSHL := ld -shared
     103  override FGSHLA := -all
     104  override FGSHLN := -notall
     105  override LIBLSHL := $(LIBG) -lm -lc
     106  override TILSHL :=
     107  override CMDTILSHL := echo 'No Template instanciation library'
     108  ifeq ($(EROSCXX), CC)
     109    override CMDSHLCXX := CC -shared
     110    override LIBLSHL := -lm -lc
     111  endif
     112  override LIBXPATH := -L/usr/X11/lib
     113  override USECXX4SO := Y
    58114endif
    59115
  • trunk/SophyaLib/Mgr/MakefileUser.h

    r478 r480  
    5555#### Fortran (tout ce qui est lie au Fortran est defini ici #############
    5656FC = f77
    57 ifeq ($(SITE),CCIN2P3)
    58   ifeq ($(MACHEROS),AIX)
    59     override FC := xlf
    60   endif
    61 endif
    6257ifeq (${MACHEROS},Linux)
    6358#  override FC := f77
     
    8883EXE := ${PPH}/Exec/
    8984INC := ${DPCBASEREP}/Include/
    90 CCI := ${INC}/CInc/
    91 GLB := ${GNU}/${MACHEROS}/lib/
     85GLB := /usr/local/lib/
    9286#--
    9387
     
    10094ifndef DBGFLAG
    10195  DBGFLAG  := -g
     96#  Probleme sur DEC/OSF1 -g avec g++/egcs pose probleme a l'assembleur
     97#                    Reza 09/99 - On met -gcoff
     98  ifeq (${MACHEROS},OSF1)
     99    ifeq ($(CXX), g++)
     100      override DBGFLAG := -gcoff
     101    endif
     102  endif
    102103endif
    103104
     
    128129#   Avec certains compilateurs C++ (KCC, aCC) , il faut fabriquer les librairies et
    129130# les shared libs avec la meme commande
    130 override ARCXX :=
    131 ifeq ($(CXX),KCC)
    132 ARCXX  := KCC
    133 endif
     131override ARCXX := $(AR)
     132override ARCXXFLAGS := $(ARFLAGS)
     133#RZ0999 ifeq ($(CXX),KCC)
     134#RZ0999 override  ARCXX  := KCC
     135#RZ0999 override ARCXXFLAGS  := -o
     136#RZ0999 endif
    134137ifeq ($(CXX),aCC)
    135 ARCXX  := aCC
     138override ARCXX  := aCC
     139override ARCXXFLAGS  := -o
    136140endif
    137141
     
    145149#  Pour compiler PI, sous Linux, les includes et libs se trouve souvent ds /usr/X11/include /usr/X11/lib/
    146150ifeq (${MACHEROS},Linux)
    147   XLDLIBS := -L/usr/X11/lib
    148   XCFLAGS := -I/usr/X11/include
     151  XLDLIBS := -L/usr/X11/lib -L/usr/X11R6/lib
     152  XCFLAGS := -I/usr/X11/include -I/usr/X11R6/include
    149153  LDLIBS := -ldl
    150154endif
    151155
    152 # Pour RFIO
    153 ifeq ($(SITE),CCIN2P3)
    154   XCFLAGS := $(XCFLAGS) -D RFIO -I/usr/local/include/shift
    155   XLDLIBS := $(XLDLIBS) -L/usr/local/lib -lshift
    156 endif
    157 
    158 # Les bibliotheques gnu C pour le fort du CCPN
    159 ifeq ($(SITE),CCIN2P3)
    160  ifeq ($(CC), gcc)
    161   ifeq ($(MACHEROS),HP-UX)
    162      FGLIB := -L/usr/local/lib/gcc-lib/hppa1.1-hp-hpux9.05/2.7.2.1 -lgcc
    163   endif
    164   ifeq ($(MACHEROS),AIX)
    165      FGLIB := -L/usr/local/lib/gcc-lib/rs6000-ibm-aix3.2.5/2.7.2.1 -lgcc
    166   endif
    167  endif
    168 endif
    169156
    170157# Chemin pour la librairie cfitsio
     
    181168#endif
    182169
    183 CPPFLAGS     :=  -I${INC} -I$(FITSIOREP) -D${MACHEROSD} -I$(INC)/tnt $(MODULECPPFLAGS)
     170CPPFLAGS     :=  -I${INC} -I$(FITSIOREP) -D${MACHEROSD} $(MODULECPPFLAGS)
    184171
    185172# Les options selon les divers compilateurs
     
    257244endif
    258245
    259 #gcc sur Solaris
    260 ifeq ($(MACHEROS),SunOS)
    261  override NOSHLIB := Y
    262 endif
    263246
    264247ifeq ($(CXX), cxx)
     
    339322endif
    340323
    341 
    342 #  Compilateur KAI
     324# --- Compilateur KAI  (OK pour v 3.3)
    343325ifeq ($(CXX), KCC)
    344326  CXXFLAGS     :=  --exceptions --rtti  --auto_instantiation --one_instantiation_per_object -D__KCC__
     
    347329endif
    348330
     331# --- Compilateur natif CC de SGI
     332ifeq ($(MACHEROS), IRIX64)
     333  ifeq ($(CXX), CC)
     334    CXXFLAGS     :=  -prelink -D__SGICC__
     335  endif
     336endif
     337
    349338# Autres compilateurs natifs.
    350339
  • trunk/SophyaLib/Mgr/history_eros

    r260 r480  
    11Mgr from Mgr
    22Mgr from Mgr
     3-----------> Makefile.h
     4   Nettoyage et MAJ Repository revision:        1.61
     5-----------> Makefile.slb
     6   Nettoyage et MAJ Repository revision:        1.26
    37-----------> chk_cvs.csh
    48   Repository revision: 1.2     /projects/Eros/CVSEros/CodeCxx/Mgr/chk_cvs.csh,v
     
    1721-----------> mkmf
    1822   Repository revision: 1.36    /projects/Eros/CVSEros/CodeCxx/Mgr/mkmf,v
     23   MAJ                  1.39    pour flag powerpc - mais pas pour HP-UX slb (.sl)
    1924-----------> mkmfPI
    2025   Repository revision: 1.15    /projects/Eros/CVSEros/CodeCxx/Mgr/mkmfPI,v
    2126-----------> mkmflib
    2227   Repository revision: 1.11    /projects/Eros/CVSEros/CodeCxx/Mgr/mkmflib,v
     28   MAJ                  1.12    $(AR) et $(ARFLAGS) -> $(ARCXX) et $(ARCXXFLAGS)
    2329-----------> mkmflien
    2430   Repository revision: 1.15    /projects/Eros/CVSEros/CodeCxx/Mgr/mkmflien,v
  • trunk/SophyaLib/Mgr/mkmf

    r478 r480  
    11#!/bin/csh
    2 # $Id: mkmf,v 1.3 1999-10-19 10:20:20 ansari Exp $
     2# $Id: mkmf,v 1.4 1999-10-20 10:25:12 ansari Exp $
    33
    44# creation de MakefileUser.h a partir de Makefile.h
     
    1919echo 'LIBS = -L$(LIB)' `sed -e 's/.*/-l&/' libdirs` '-lm' >> GNUmakefile
    2020echo 'LIBG = -L$(GLB) -lstdc++' >> GNUmakefile
     21echo 'ifeq ($(HOSTTYPE), powerpc)' >> GNUmakefile
     22echo '  LIBG = -L$(GLB)' >> GNUmakefile
     23echo 'endif' >> GNUmakefile
    2124
    2225cat >> GNUmakefile <<EOF
  • trunk/SophyaLib/Mgr/mkmflib

    r218 r480  
    11#!/bin/csh
    2 # $Id: mkmflib,v 1.1.1.1 1999-04-09 17:55:32 ansari Exp $
     2# $Id: mkmflib,v 1.2 1999-10-20 10:25:12 ansari Exp $
    33
    44cd ../$1
     
    4848echo $libf ':' \
    4949 `ls *.{c,cc} | comm -3 -1 $TMPDIR/exclude.sort - | sed -e 's/\.cc/.o/' | sed -e 's/\.c/.o/' | sed -e 's/^/$(OBJ)/'` >> GNUmakefile
    50 echo '  $(AR) $(ARFLAGS) $@ $?' >> GNUmakefile
     50echo '  $(ARCXX) $(ARCXXFLAGS) $@ $?' >> GNUmakefile
    5151#  Pour faire compiler les instantiations automatique de cxx (DEC)
    5252echo 'ifeq ($(CXX),cxx)' >> GNUmakefile
  • trunk/SophyaLib/SysTools/pdlmgr.cc

    r296 r480  
    2323if ( (path.length() > 0) && (path[path.length()] != '/')  ) GetTmpDir() = path + '/';
    2424else GetTmpDir() = path;
     25#if defined(OSF1) || defined(Linux) || defined(SunOS)
     26  string cmd = "LD_LIBRARY_PATH=";
     27  char* varenv=NULL;
     28  varenv=getenv("LD_LIBRARY_PATH");
     29#elif defined(IRIX64)
     30  string cmd = "LD_LIBRARYN32_PATH=";
     31  char* varenv=NULL;
     32  varenv=getenv("LD_LIBRARYN32_PATH");
     33
     34  if (varenv == NULL) {
     35    cmd += '.'; 
     36    if (path.length() > 0)  cmd += ':' + path;
     37    }
     38  else {
     39    if (varenv[0] != '.') cmd += ".:";
     40    if (path.length() > 0)  cmd += path + ':';
     41    cmd += varenv;
     42    putenv(cmd.c_str());
     43    }
     44#elif defined(AIX)
     45  string cmd = "LIBPATH=";
     46  char* varenv=NULL;
     47  varenv=getenv("LIBPATH");
     48  if (varenv == NULL) {
     49    cmd += '.'; 
     50    if (path.length() > 0)  cmd += ':' + path;
     51    cmd += ":/usr/lib:/lib";
     52    }
     53  else {
     54    if (varenv[0] != '.') cmd += ".:";
     55    if (path.length() > 0)  cmd += path + ':';
     56    cmd += varenv;
     57    putenv(const_cast<char *>(cmd.c_str()));
     58    }
     59
     60#endif
    2561return;
    2662}
     
    4985
    5086// Compilation du fichier
    51 #if defined(OSF1) || defined(Linux)
     87#ifndef __mac__
    5288cmd = "cc -c -o " + fnameobj + " " + fname;
     89#else
     90cmd = "Il faut compiler !!!" + fnameobj + " " + fname;
    5391#endif
    5492rc = system(cmd.c_str());
     
    68106#if defined(OSF1)
    69107  cmd = "ld -shared -o " + fnameso + " -all " + fnameobj + " -none -lm -lc";
    70 #else
     108#elif defined(Linux)
    71109  cmd = "ld -shared -o " + fnameso + " " + fnameobj + " -lm -lc";
     110#elif defined(SunOS)
     111  cmd = "ld -G -o " + fnameso + " " + fnameobj + " -lm -lc";
     112#elif defined(IRIX64)
     113  cmd = "ld -shared -o " + fnameso + " " + fnameobj + " -lm -lc";
     114#elif defined(AIX)
     115  cmd = "ld -G -bnogc -bexpall -bM:1L -o " + fnameso + " " + fnameobj;
     116#elif defined(HPUX)
     117  cmd = "ld -b -o " + fnameso + " " + fnameobj + " -lm -lc";
     118#else
     119  cmd = "ld -o " + fnameso + " " + fnameobj + " -lm -lc";
    72120#endif
    73121rc = system(cmd.c_str());
     
    76124  return(NULL);
    77125  }
    78 
    79126PDynLinkMgr* rdyn = new PDynLinkMgr(fnameso, false);
    80127rdyn->copy = true;
     
    117164soName = fnameso;
    118165
    119 #if defined(OSF1) || defined(Linux)
     166#if defined(HPUX)
     167dlhandle = NULL;
     168cerr << "PDynLinkMgr::PDynLinkMgr() Not yet available on HP-UX " << endl;
     169return;
     170#else
    120171dlhandle =  dlopen(fnameso.c_str(), RTLD_NOW);
    121172if (dlhandle == NULL) {
     
    132183PDynLinkMgr::~PDynLinkMgr()
    133184{
    134 #if defined(OSF1) || defined(Linux)
     185#if defined(HPUX)
     186cerr << "PDynLinkMgr::~PDynLinkMgr() Not yet available on HP-UX " << endl;
     187return;
     188#else
    135189if (dlhandle) dlclose(dlhandle);    dlhandle = NULL;
    136 #endif
    137190if (copy) {
    138191  string cmd = "rm -f " + soName;
    139192  system(cmd.c_str());
    140193  }
     194#endif
    141195}
    142196
     
    145199{
    146200DlFunction f = NULL;
    147 #if defined(OSF1) || defined(Linux)
     201#if defined(HPUX)
     202cerr << "PDynLinkMgr::GetFunction() Not yet available on HP-UX " << endl;
     203return f;
     204#else
    148205if (dlhandle != NULL) 
    149206  f = (DlFunction)dlsym(dlhandle, funcname.c_str());
    150 #endif
    151 if (f == NULL) cerr << "PDynLinkMgr::PDynLinkMgr(): Error linking " << funcname << endl;
     207if (f == NULL) cerr << "PDynLinkMgr::GetFunction(): Error linking " << funcname << endl;
    152208return(f);
    153 }
    154 
     209#endif
     210}
     211
  • trunk/SophyaLib/SysTools/pdlmgr.h

    r241 r480  
    88#include "machdefs.h"
    99#include <string>
    10 #if defined(__KCC__)
    11 using std::string ;
    12 #endif
    1310
    1411
     
    4138#if defined(HPUX)
    4239  shl_t dlhandle;
    43 #else
     40#else 
    4441  void * dlhandle;
    4542#endif
  • trunk/SophyaLib/SysTools/periodic.h

    r241 r480  
    66#include "machdefs.h"
    77#include <list>
    8 #if defined(__KCC__)
    9 #include <list.h>
    10 #endif
    118
    129class Periodic;
  • trunk/SophyaLib/SysTools/psighand.cc

    r245 r480  
    55#include <signal.h>
    66#include "psighand.h"
    7 #include "pexceptions.h" 
     7#include "pexceptions.h"
    88
    9 using namespace PlanckDPC;
    10 
    11 static bool sigprstate[5] = {false, false, false, false};
     9static bool sigprstate[6] = {false, false, false, false, false, false};
    1210
    1311void PeidaProcessSignal(int s);
    1412
    1513/* Nouvelle-Fonction */
    16 void PeidaConfigureSignalhandling(bool cfpe, bool csegv, bool cquit, bool cusr1, bool cusr2)
     14void PeidaConfigureSignalhandling(bool cfpe, bool csegv, bool cint, bool cquit, bool cusr1, bool cusr2)
    1715{
    1816  struct sigaction ae, ad;
     
    5351    sigprstate[1] = csegv;
    5452    }
     53
     54// SIGINT
     55  if (sigprstate[2] != cint) {
     56    if (cquit)   {
     57      sigaction(SIGINT, &ae, NULL);
     58      puts("PeidaConfigureSignalhandling(): Activating SIGINT handling (-> throw) ...");
     59      }
     60    else  {
     61      sigaction(SIGINT, &ad, NULL);
     62      puts("PeidaConfigureSignalhandling(): Back to default SIGINT handling ...");
     63      }
     64    sigprstate[2] = cint;
     65    }
     66 
    5567// SIGQUIT
    56   if (sigprstate[2] != cquit) {
     68  if (sigprstate[3] != cquit) {
    5769    if (cquit)   {
    5870      sigaction(SIGQUIT, &ae, NULL);
     
    6375      puts("PeidaConfigureSignalhandling(): Back to default SIGQUIT handling ...");
    6476      }
    65     sigprstate[2] = cquit;
     77    sigprstate[3] = cquit;
    6678    }
    6779 
    6880// SIGUSR1
    69   if (sigprstate[3] != cusr1) {
     81  if (sigprstate[4] != cusr1) {
    7082    if (cusr1)   {
    7183      sigaction(SIGUSR1, &ae, NULL);
     
    7688      puts("PeidaConfigureSignalhandling(): Back to default SIGUSR1 handling ...");
    7789      }
    78     sigprstate[3] = cusr1;
     90    sigprstate[4] = cusr1;
    7991    }
    80 // SIGUSR1
    81   if (sigprstate[4] != cusr2) {
     92// SIGUSR2
     93  if (sigprstate[5] != cusr2) {
    8294    if (cusr2)   {
    8395      sigaction(SIGUSR2, &ae, NULL);
     
    88100      puts("PeidaConfigureSignalhandling(): Back to default SIGUSR2 handling ...");
    89101      }
    90     sigprstate[4] = cusr2;
     102    sigprstate[5] = cusr2;
    91103    }   
    92104}
     
    94106void PeidaProcessSignal(int s)
    95107{
     108string msg;
    96109switch(s)
    97110  {
    98111  case SIGFPE :
    99112    puts("PeidaProcessSignal: ###Signal SIGFPE catched, throw catchedSIGFPE ###");
    100     throw CaughtSignalExc("SIGFPE");
     113    msg = "Caught SIGFPE";
     114    throw ( CaughtSignalExc(msg, s) );
    101115  case SIGSEGV :
    102116    puts("PeidaProcessSignal: ###Signal SIGSEGV catched, throw catchedSIGSEGV ###");
    103     throw CaughtSignalExc("SIGSEGV");
     117    msg = "Caught SIGSEGV";
     118    throw ( CaughtSignalExc(msg, s) );
    104119  case SIGINT :
    105120    puts("PeidaProcessSignal: ###Signal SIGINT catched, throw catchedSIGINT ###");
    106     throw CaughtSignalExc("SIGINT");
     121    msg = "Caught SIGINT";
     122    throw ( CaughtSignalExc(msg, s) );
    107123  case SIGQUIT :
    108124    puts("PeidaProcessSignal: ###Signal SIGQUIT catched, throw catchedSIGQUIT ###");
    109     throw CaughtSignalExc("SIGQUIT");
     125    msg = "Caught SIGQUIT";
     126    throw ( CaughtSignalExc(msg, s) );
    110127  case SIGUSR1 :
    111128    puts("PeidaProcessSignal: ###Signal SIGUSR1 catched, throw catchedSIGUSR1 ###");
    112     throw CaughtSignalExc("SIGUSR1");
     129    msg = "Caught SIGUSR1";
     130    throw ( CaughtSignalExc(msg, s) );
    113131  case SIGUSR2 :
    114132    puts("PeidaProcessSignal: ###Signal SIGUSR2 catched, throw catchedSIGUSR2 ###");
    115     throw CaughtSignalExc("SIGUSR2");
     133    msg = "Caught SIGUSR2";
     134    throw ( CaughtSignalExc(msg, s) );
    116135  default :
    117136    printf("PeidaProcessSignal: ###Signal %d catched, throw  inconsistentErr ### \n", s);
    118     throw CaughtSignalExc("???");
     137    msg = "Caught SIG???";
     138    throw ( CaughtSignalExc(msg, s) );
    119139  }
     140
     141// return;
    120142}
  • trunk/SophyaLib/SysTools/psighand.h

    r241 r480  
    66
    77#include "machdefs.h"
    8 void PeidaConfigureSignalhandling(bool cfpe=false, bool csegv=false, bool cquit=false, bool cusr1=false, bool cusr2=false);
     8void PeidaConfigureSignalhandling(bool cfpe=false, bool csegv=false,
     9                                  bool cint=false, bool cquit=false,
     10                                  bool cusr1=false, bool cusr2=false);
    911#endif
Note: See TracChangeset for help on using the changeset viewer.