From 6f4ae012f30e3e0685a39eb747b1ea5b33c085a6 Mon Sep 17 00:00:00 2001 From: caremoli Date: Tue, 19 May 2009 14:41:36 +0000 Subject: [PATCH] CCAR: change in check_calcium.m4 macro for --with-cal-int= --- configure.ac | 154 +++++++++--------- idl/Makefile.am | 2 +- idl/SALOMEDS.idl | 2 +- salome_adm/unix/config_files/check_calcium.m4 | 21 ++- src/Container/SALOME_ContainerManager.cxx | 5 +- .../DSC_User/Datastream/Calcium/calciumf.c | 19 --- 6 files changed, 99 insertions(+), 104 deletions(-) diff --git a/configure.ac b/configure.ac index e0bd5f730..46c864dd1 100644 --- a/configure.ac +++ b/configure.ac @@ -538,82 +538,82 @@ echo # autoscan, the Makefile list is generated in the output file configure.scan. # This could be helpfull to update de configuration. AC_OUTPUT([ \ - ./KERNEL_version.h \ - ./salome_adm/unix/SALOMEconfig.ref \ - ./salome_adm/Makefile \ - ./salome_adm/cmake_files/Makefile \ - ./salome_adm/unix/Makefile \ - ./salome_adm/unix/config_files/Makefile \ - Makefile \ - ./bin/Makefile \ - ./bin/VERSION \ - ./doc/Makefile \ - ./doc/salome/Makefile \ - ./doc/salome/tui/Makefile \ - ./doc/salome/tui/doxyfile \ - ./doc/salome/gui/Makefile \ - ./doc/salome/gui/doxyfile \ - ./idl/Makefile \ - ./idl/Calcium_Ports.idl \ - ./resources/Makefile \ - ./resources/KERNELCatalog.xml \ - ./resources/CatalogResources.xml \ - ./src/Makefile \ - ./src/Basics/Makefile \ - ./src/Basics/Test/Makefile \ - ./src/Batch/Makefile \ - ./src/Batch_SWIG/Makefile \ - ./src/Communication/Makefile \ - ./src/Communication_SWIG/Makefile \ - ./src/Container/Makefile \ - ./src/ParallelContainer/Makefile \ - ./src/DF/Makefile \ - ./src/DSC/Makefile \ - ./src/DSC/DSC_Basic/Makefile \ - ./src/DSC/DSC_User/Makefile \ - ./src/DSC/DSC_User/Basic/Makefile \ - ./src/DSC/DSC_User/Datastream/Makefile \ - ./src/DSC/DSC_User/Datastream/Palm/Makefile \ - ./src/DSC/DSC_User/Datastream/Calcium/Makefile \ - ./src/DSC/DSC_User/Datastream/Calcium/calcium_integer_port_uses.hxx \ - ./src/DSC/DSC_User/Datastream/Calcium/CalciumProvidesPort.hxx \ - ./src/DSC/DSC_User/Datastream/Calcium/CalciumFortranInt.h \ - ./src/DSC/ParallelDSC/Makefile \ - ./src/DSC/DSC_Python/Makefile \ - ./src/GenericObj/Makefile \ - ./src/HDFPersist/Makefile \ - ./src/KERNEL_PY/Makefile \ - ./src/Launcher/Makefile \ - ./src/LifeCycleCORBA/Makefile \ - ./src/LifeCycleCORBA/Test/Makefile \ - ./src/LifeCycleCORBA_SWIG/Makefile \ - ./src/LifeCycleCORBA_SWIG/Test/Makefile \ - ./src/Logger/Makefile \ - ./src/Logger/Test/Makefile \ - ./src/ModuleCatalog/Makefile \ - ./src/ModuleGenerator/Makefile \ - ./src/ModuleGenerator/testIDLparser \ - ./src/MPIContainer/Makefile \ - ./src/NamingService/Makefile \ - ./src/NamingService/Test/Makefile \ - ./src/Notification/Makefile \ - ./src/NOTIFICATION_SWIG/Makefile \ - ./src/Registry/Makefile \ - ./src/ResourcesManager/Makefile \ - ./src/SALOMEDS/Makefile \ - ./src/SALOMEDS/Test/Makefile \ - ./src/SALOMEDSClient/Makefile \ - ./src/SALOMEDSImpl/Makefile \ - ./src/SALOMEDSImpl/Test/Makefile \ - ./src/SALOMELocalTrace/Makefile \ - ./src/SALOMELocalTrace/Test/Makefile \ - ./src/SALOMETraceCollector/Makefile \ - ./src/SALOMETraceCollector/Test/Makefile \ - ./src/TestContainer/Makefile \ - ./src/TestMPIContainer/Makefile \ - ./src/TOOLSDS/Makefile \ - ./src/UnitTests/Makefile \ - ./src/Utils/Makefile \ - ./src/Utils/Test/Makefile \ + KERNEL_version.h \ + salome_adm/unix/SALOMEconfig.ref \ + salome_adm/Makefile \ + salome_adm/cmake_files/Makefile \ + salome_adm/unix/Makefile \ + salome_adm/unix/config_files/Makefile \ + Makefile \ + bin/Makefile \ + bin/VERSION \ + doc/Makefile \ + doc/salome/Makefile \ + doc/salome/tui/Makefile \ + doc/salome/tui/doxyfile \ + doc/salome/gui/Makefile \ + doc/salome/gui/doxyfile \ + idl/Makefile \ + idl/Calcium_Ports.idl \ + resources/Makefile \ + resources/KERNELCatalog.xml \ + resources/CatalogResources.xml \ + src/Makefile \ + src/Basics/Makefile \ + src/Basics/Test/Makefile \ + src/Batch/Makefile \ + src/Batch_SWIG/Makefile \ + src/Communication/Makefile \ + src/Communication_SWIG/Makefile \ + src/Container/Makefile \ + src/ParallelContainer/Makefile \ + src/DF/Makefile \ + src/DSC/Makefile \ + src/DSC/DSC_Basic/Makefile \ + src/DSC/DSC_User/Makefile \ + src/DSC/DSC_User/Basic/Makefile \ + src/DSC/DSC_User/Datastream/Makefile \ + src/DSC/DSC_User/Datastream/Palm/Makefile \ + src/DSC/DSC_User/Datastream/Calcium/Makefile \ + src/DSC/DSC_User/Datastream/Calcium/calcium_integer_port_uses.hxx \ + src/DSC/DSC_User/Datastream/Calcium/CalciumProvidesPort.hxx \ + src/DSC/DSC_User/Datastream/Calcium/CalciumFortranInt.h \ + src/DSC/ParallelDSC/Makefile \ + src/DSC/DSC_Python/Makefile \ + src/GenericObj/Makefile \ + src/HDFPersist/Makefile \ + src/KERNEL_PY/Makefile \ + src/Launcher/Makefile \ + src/LifeCycleCORBA/Makefile \ + src/LifeCycleCORBA/Test/Makefile \ + src/LifeCycleCORBA_SWIG/Makefile \ + src/LifeCycleCORBA_SWIG/Test/Makefile \ + src/Logger/Makefile \ + src/Logger/Test/Makefile \ + src/ModuleCatalog/Makefile \ + src/ModuleGenerator/Makefile \ + src/ModuleGenerator/testIDLparser \ + src/MPIContainer/Makefile \ + src/NamingService/Makefile \ + src/NamingService/Test/Makefile \ + src/Notification/Makefile \ + src/NOTIFICATION_SWIG/Makefile \ + src/Registry/Makefile \ + src/ResourcesManager/Makefile \ + src/SALOMEDS/Makefile \ + src/SALOMEDS/Test/Makefile \ + src/SALOMEDSClient/Makefile \ + src/SALOMEDSImpl/Makefile \ + src/SALOMEDSImpl/Test/Makefile \ + src/SALOMELocalTrace/Makefile \ + src/SALOMELocalTrace/Test/Makefile \ + src/SALOMETraceCollector/Makefile \ + src/SALOMETraceCollector/Test/Makefile \ + src/TestContainer/Makefile \ + src/TestMPIContainer/Makefile \ + src/TOOLSDS/Makefile \ + src/UnitTests/Makefile \ + src/Utils/Makefile \ + src/Utils/Test/Makefile \ ]) diff --git a/idl/Makefile.am b/idl/Makefile.am index d8f219942..ee74ca586 100644 --- a/idl/Makefile.am +++ b/idl/Makefile.am @@ -262,7 +262,7 @@ if WITH_PACO_PARALLEL %PaCO.idl %PaCO.hxx %PaCO.cxx : %.idl %.xml $(OMNIORB_IDL) -p@PACOPATH@/lib/python -bpaco -Wb$(top_srcdir)/idl/$*.xml,$(srcdir):@PACOPATH@/idl $(top_srcdir)/idl/$*.idl -%.hxx: %.idl +.idl.hxx: $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) -Wbh=.hxx -Wbs=.cxx $< endif diff --git a/idl/SALOMEDS.idl b/idl/SALOMEDS.idl index 80b69b51a..8e44c7438 100644 --- a/idl/SALOMEDS.idl +++ b/idl/SALOMEDS.idl @@ -34,7 +34,7 @@ #include "SALOME_GenericObj.idl" /*! \brief - This package contains the interfaces used for creation, managment + This package contains the interfaces used for creation, management and modification of the %Study */ module SALOMEDS diff --git a/salome_adm/unix/config_files/check_calcium.m4 b/salome_adm/unix/config_files/check_calcium.m4 index 7cd132a6f..7a81e0164 100644 --- a/salome_adm/unix/config_files/check_calcium.m4 +++ b/salome_adm/unix/config_files/check_calcium.m4 @@ -9,12 +9,13 @@ AC_ARG_WITH([cal_int], [], [withval=no]) +AC_CHECK_SIZEOF(long) +AC_CHECK_SIZEOF(int) + if test "x$withval" = "xno" then AC_REQUIRE([CHECK_F77]) AC_CHECK_SIZEOF_FORTRAN(integer) - AC_CHECK_SIZEOF(long) - AC_CHECK_SIZEOF(int) if test "x$ac_cv_sizeof_fortran_integer" = "x8" ; then AC_DEFINE(HAVE_F77INT64,[], @@ -32,11 +33,21 @@ then AC_MSG_ERROR([Size of Fortran type integer is neither four nor eigth bytes]) fi -else - LONG_OR_INT="$withval" +elif test "x$withval" = "xint" +then + LONG_OR_INT="int" CALCIUM_IDL_INT_F77="long" CALCIUM_CORBA_INT_F77="CORBA::Long" - AC_MSG_NOTICE([Using C type $withval for cal_int]) + AC_MSG_NOTICE([Using C type int for cal_int]) + +elif test "x$withval" = "xlong" +then + LONG_OR_INT="long" + CALCIUM_IDL_INT_F77="long long" + CALCIUM_CORBA_INT_F77="CORBA::LongLong" + AC_MSG_NOTICE([Using C type long for cal_int]) +else + AC_MSG_ERROR([Fortran type integer must be mapped to C type int or C type long]) fi AC_SUBST(CALCIUM_IDL_INT_F77) diff --git a/src/Container/SALOME_ContainerManager.cxx b/src/Container/SALOME_ContainerManager.cxx index 0ac18204f..989ca2c4b 100644 --- a/src/Container/SALOME_ContainerManager.cxx +++ b/src/Container/SALOME_ContainerManager.cxx @@ -287,7 +287,10 @@ SALOME_ContainerManager::StartContainer(const Engines::MachineParameters& params if(std::string(params.mode.in())=="getorstart"||std::string(params.mode.in())=="get") return cont._retn(); /* the container exists and params.mode is getorstart or get use it*/ else - cont->Shutdown(); // shutdown the registered container if it exists + { + INFOS("A container is already registered with the name: " << containerNameInNS << ", shutdown the existing container"); + cont->Shutdown(); // shutdown the registered container if it exists + } } } catch(CORBA::Exception&) diff --git a/src/DSC/DSC_User/Datastream/Calcium/calciumf.c b/src/DSC/DSC_User/Datastream/Calcium/calciumf.c index b74e68ced..18e4ec5de 100644 --- a/src/DSC/DSC_User/Datastream/Calcium/calciumf.c +++ b/src/DSC/DSC_User/Datastream/Calcium/calciumf.c @@ -131,17 +131,7 @@ void F_FUNC(cplen,CPLEN)(long *compo,cal_int *dep,float *ti,float *tf,cal_int *i { char* cnom=fstr1(STR_PTR(nom),STR_LEN(nom)); fprintf(stderr,"CPLEN: %s %f %f\n",cnom,*ti,*tf); - /*Les tests suivants n'empêchent pas l'utilisateur fortran de compiler son - module avec une taille d'entier différente de celle qu'il a précisée à SALOME. - Sans adaptation spécifique du code (integer*8, integer*4), ce cas de figure entrainera - inévitablement un crash.*/ -#if !(SIZEOF_FORTRAN_INTEGER && SIZEOF_INT && SIZEOF_LONG) -# error "The macros SIZEOF_FORTRAN_INTEGER, SIZEOF_INT and SIZEOF_LONG must be defined." -#elif ( SIZEOF_FORTRAN_INTEGER == SIZEOF_INT ) || ( SIZEOF_FORTRAN_INTEGER == SIZEOF_LONG ) *err=cp_len_fort_((void *)*compo,*dep,ti,tf,iter,cnom,*max,n,tab); -#else -# error "The SIZEOF_FORTRAN_INTEGER is not equal to SIZEOF_INT nor SIZEOF_LONG." -#endif fprintf(stderr,"End of CPLEN: %s \n",cnom); free_str1(cnom); } @@ -317,16 +307,7 @@ void F_FUNC(cpeen,CPEEN)(long *compo,cal_int *dep,float *ti,cal_int *iter,STR_PS { char* cnom=fstr1(STR_PTR(nom),STR_LEN(nom)); fprintf(stderr,"CPEEN: %s %f %d\n",cnom, *ti,*iter); - /*Les tests suivants n'empêchent pas l'utilisateur fortran de compiler son - module avec une taille d'entier différente de celle qu'il a précisée à SALOME. - Ce cas de figure entrainera inévitablement un crash.*/ -#if !(SIZEOF_FORTRAN_INTEGER && SIZEOF_INT && SIZEOF_LONG) -# error "The macros SIZEOF_FORTRAN_INTEGER, SIZEOF_INT and SIZEOF_LONG must be defined." -#elif ( SIZEOF_FORTRAN_INTEGER == SIZEOF_INT ) || ( SIZEOF_FORTRAN_INTEGER == SIZEOF_LONG ) *err=cp_een_fort_((void *)*compo,*dep,*ti,*iter,cnom,*n,tab); -#else -# error "The SIZEOF_FORTRAN_INTEGER is not equal to SIZEOF_INT nor SIZEOF_LONG." -#endif fprintf(stderr,"End of CPEEN: %s %f \n",cnom,*ti); free_str1(cnom); } -- 2.39.2