Bug#587007: salome: Porting patches to Salome 5.1.4 for upstream inclusion

2010-10-13 Thread Andre Espaze
Hi Adam,
 
 First, apologies for the delay in getting back to you on this.  I was
 waiting for an opportunity to sink a good amount of time into reviewing
 your patches, and it didn't come, until I realized this morning that I
 had missed your deadline by a day. :-(
No problem, I understand that you are very busy. Thank you very much for
the review.
 
 On Thu, 2010-09-23 at 12:00 +0200, Andre Espaze wrote:
  Hello Adam,
  
Then what would be the relevant place for submitting patches of the
remaining modules? Is it a good idea to send them to the bugtracker
like I did for the kernel? Or could I let them on the Mercurial
repository of http://www.python-science.org/project/salome-packaging?
   
   I think the Debian bug tracker is better for me, I find it easier to see
   them and give feedback this way, and it's more of a standard Debian way
   of doing things.
  I have enclosed in the 'salome-packaging-0.2.tar.gz' archive the patches
  updated to the 5.1.4 version for the KERNEL, GUI, GEOM, MED, SMESH and
  VISU modules. Once I get your agreement, I plan to send that archive to
  upstream because I am around half way of the porting task, with around
  50 patches on 100. Moreover most of the essential modules are working.
  My concern is now to know which kind of patches are going to be accepted
  before continuing.
  
  The patches come with a documentation explaining briefly their
  meaning. Then the steps on how to build and run every module on Debian
  sid are described. I did not use the tools in the Debian packaging
  system (debian/rules, fakeroot, git-buildpackage, quilt) in order to
  ease the review process. Instead, I imitate the building process
  by listing commands. By that way, I hope that it will be possible
  to discuss with upstream on a specific point by directly using
  the commands provided by their build system.
 
 Thank you for taking on this huge task!  I can see that you've put an
 enormous amount of work into making the patches really helpful for
 upstream.
 
 My only concern about the whole thing is that the -debian-dirs patches
 right now are not in good shape for upstream, so I think we should
 figure out how to make them more generic using libdir and bindir before
 sending them in.  This will be very tricky for source code files, like
 C++ code.  The best way to do this will probably be to use -DBINDIR=...
 and -DLIBDIR=... where those are substituted in the Makefile by
 configure.
Ok, it sounds good.
 
 I'll see about converting those patches in this way.  In the meantime, I
 think everything else is ready to go in.  Thanks again for a great piece
 of work, and apologies again for the delay in getting this feedback to
 you.
Are you working on those patches or may I try to help you? From now,
I understand that I should wait a little more before sending the first
release. By the end of the month, I can also send patches that are ready
to go in if you would prefer that option.

Best regards,

André




--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#598421: CVE-2010-3377 -- security problem in a few files

2010-10-13 Thread Andre Espaze
Hello Adam,
 
 There's a security bug in the Debian package for salome due to insecure
 handling of LD_LIBRARY_PATH in a couple of places, bug 598421.
 
 To fix it, I've patched my runSalome script (this does not affect
 upstream runSalome), and several upstream files, and pushed the fixes to
 the alioth repository.
 
 Can you please forward upstream the *-secure-library-path.patch files
 (*=gui, med, yacs)?  Please mention that it fixes Common Vulnerabilities
 and Exposures issue ID CVE-2010-3377 , as mentioned in the patches.
Ok, I plan to submit them with the report on the 5.1.4 version. In case
it is more urgent, just let me know.

All the best,

André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#587007: salome: Porting patches to Salome 5.1.4 for upstream inclusion

2010-09-23 Thread Andre Espaze
Hello Adam,

  Then what would be the relevant place for submitting patches of the
  remaining modules? Is it a good idea to send them to the bugtracker
  like I did for the kernel? Or could I let them on the Mercurial
  repository of http://www.python-science.org/project/salome-packaging?
 
 I think the Debian bug tracker is better for me, I find it easier to see
 them and give feedback this way, and it's more of a standard Debian way
 of doing things.
I have enclosed in the 'salome-packaging-0.2.tar.gz' archive the patches
updated to the 5.1.4 version for the KERNEL, GUI, GEOM, MED, SMESH and
VISU modules. Once I get your agreement, I plan to send that archive to
upstream because I am around half way of the porting task, with around
50 patches on 100. Moreover most of the essential modules are working.
My concern is now to know which kind of patches are going to be accepted
before continuing.

The patches come with a documentation explaining briefly their
meaning. Then the steps on how to build and run every module on Debian
sid are described. I did not use the tools in the Debian packaging
system (debian/rules, fakeroot, git-buildpackage, quilt) in order to
ease the review process. Instead, I imitate the building process
by listing commands. By that way, I hope that it will be possible
to discuss with upstream on a specific point by directly using
the commands provided by their build system.

I am open on any of your feedback concerning patches or documentation.
Beyond getting the current patches merged into upstream code, my goal is 
to find how to submit changes that can gain acceptance.

All the best,

André



salome-packaging-0.2.tar.gz
Description: Binary data


Bug#595909: salome-dev: add path to adm_local files

2010-09-20 Thread Andre Espaze
Hi Adam,
 
 On Thu, 2010-09-16 at 09:48 +0200, Andre Espaze wrote:
  On Tue, Sep 14, 2010 at 06:20:34PM -0400, Adam C Powell IV wrote:
   On Tue, 2010-09-14 at 11:05 +0200, Andre Espaze wrote:
Package: salome-dev
Version: 5.1.3-11
Severity: wishlist

It will be nice to include adm_local directory for each salome 
base modules
in the salome-dev package. This will greatly simplify the 
developpement and
packaging of new plugins since the configuration step almost 
refers to
MODULE/adm_local.
Otherwise we ave to include some MODULE_SRC in the src package 
for the plugins
(see what I have done for salome-code-aster on svn debian 
science)
   
   This is a good idea.  Right now the package puts the .m4 files all
   together in one big salome.m4 in /usr/share/aclocal (because
   check_KERNEL.m4 and check_GUI.m4 are far too generic names).  
   But
   something like /usr/share/salome/[module]/adm_local or
   just /usr/share/salome/adm_local could include more than just the 
   .m4
   files.
   
   /usr/share/salome/adm_local is the easiest place to put these.  
   Will
   that work for you?
  
  I would rather try to stick as much as possible to the original
  installation. So my feelings are that adm_local from MODULE_SRC 
  should
  be included in /usr/share/salome/MODULE_SRC.
 
 It's pretty easy either way.  André, as someone closer to upstream, 
 what
 do you think makes more sense?  Right now, all of the adm_local files
 install into /usr/adm_local, which violates the FHS.  Should they go
 into a single directory under /usr/share/salome or into separate 
 module
 directories?
To my point of view, installing the .m4 files in separate module 
directories like /usr/share/salome/MODULE_SRC makes more sense with
upstream packaging philosophy. I understand the clearness of a single 
directory like /usr/share/salome/adm_local but I fear conflicts
because all modules do not necessarily share the same macro for a same 
configuration check. 
   
   Well, I think it's a problem that they don't use the same macro in some
   cases, like GUI checks...  But I'll go ahead and do it this way anyway.
  Just for information, the 'geom-use-gui-check.patch' patch is broken
  on the 5.1.4 version because the macros 'CHECK_SALOME_GUI' and
  'CHECK_CORBA_IN_GUI' are now defined in the check_GUI.m4 file of
  the GEOM module.
 
 Yeah, this bugged me, so I tried to get them all to work with the
 version in the GUI module as you suggested.
 
  From now my solution is to give the path
  '${GUI_ROOT_DIR}/adm_local/unix/config_files' as the first argument
  to aclocal in build_configure (but it could be a problem in case
  a macro really needs to be overloaded locally).
Finally I spoke too soon because the modified 'check_GUI.m4' from the
GUI module will be overwritten when installing GEOM (I discovered this
problem only when porting MED). My current workaround is to overwrite
every 'check_GUI.m4' but of course a better solution is needed.
 
 Okay.  Aster and Saturne will need to also use
 ${GUI_ROOT_DIR}/share/salome/${MODULE}_SRC/adm_local/unix/config_files -
 is this path set somewhere, so we can include both of these?
I did not find this path. Do you plan to modify 'debian/rules' in
the installation steps or patch the autotools process? But I may have
misunderstood your idea.

All the best,

André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#587007: salome: Porting patches to Salome 5.1.4 for upstream inclusion

2010-09-16 Thread Andre Espaze
Hi Adam,

  After a long break, I am back on the Salome packaging.
 
 Welcome back!  I hope you enjoyed your break.
Sure, it was really nice.

 
  I have enclosed most of the patches for building the KERNEL module with
  the 5.1.4 version. Moreover a start of the documentation that I plan
  to send for patches submission can be found here:
  https://hg.python-science.org/salome-packaging/file/d60a8c2112dc/debian-patch-review.rst
  
  However I wanted to discuss with you on 3 patches that I did not include
  because I thought that they concern Debian choices:
  
  - kernel-config-extra.patch
 
 Definitely Debian-only
 
  - kernel-doc-images-svg.patch
 
 Upstream probably won't accept, I haven't seen a big reduction in the
 documentation size with this patch (haven't tested though).
Ok, so I will make a try for this one too.
 
  - kernel-install-without-docs.patch
 
 This one is debatable.  I think that when most users do make  make
 install they don't want to go through the entire documentation building
 and installation process, so I would ask and see whether they would be
 willing to accept this.  It certainly saves us a *ton* of build time and
 disk space on the autobuilders, as when they only build for their own
 arch, there is no reason to build and install the documentation!
Ok, I will try to submit it in that case, saying that is debatable (like
kernel-doc-images-svg.patch).
 
  and this one does not make sense alone because the command is then
  renamed in 'debian/rules':
  
  - kernel-python-noexec.patch
 
 I agree.
 
  In case you have arguments or ideas about how to submit them, I will
  include them in the report. Now I plan to continue on the following
  modules.
 
 I have a couple more which perhaps should not go upstream.
 kernel-debian-dirs.patch is obviouis; 
Yes but I added it because it is required for illustrating how Salome
is built on Debian and moreover it shows that hard coded paths are
potentially a problem for custom module installations. In case upstream
is interested by such change, I plan to improve it.

 also, kernel-mpi-libs.patch uses
 the Debian-specific MPI symlink name libmpi++ .
Thanks for the precision, I thought libmpi++ was a standard. However should
we ask for a MPI_LIBS environment variable in the configure script?
It seems that '-lmpio -lmpiCC' is MPICH specific.
 
 In addition, kernel-hdf5-needs-mpi.patch might not be accepted:
 Sylvestre tells me that upstream wants to use the serial HDF5 version,
 not parallel.
Yes they told me that too, however the changes should not break a serial
HDF5 version.

  And they might not accept kernel-replace-csh-stderr.patch
 because I think upstream uses csh/tcsh a lot, and I don't think the 2
 syntax works there.
Good news for this one, the file:
KERNEL_SRC_5.1.4/src/LifeCycleCORBA/SALOME_LifeCycleCORBA.cxx
uses already the '2' syntax. So the remaining changes should pass.
 
 But kernel-debian-occ.patch *should* go upstream -- it's compatible both
 with the traditional OCC install locations, and the Debian/Ubuntu
 locations, which are becoming more commonplace and significant.
Yes, I hope too.

Then what would be the relevant place for submitting patches of the
remaining modules? Is it a good idea to send them to the bugtracker
like I did for the kernel? Or could I let them on the Mercurial
repository of http://www.python-science.org/project/salome-packaging?

All the best,

André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#595909: salome-dev: add path to adm_local files

2010-09-16 Thread Andre Espaze
On Tue, Sep 14, 2010 at 06:20:34PM -0400, Adam C Powell IV wrote:
 On Tue, 2010-09-14 at 11:05 +0200, Andre Espaze wrote:
  Hello Adam and Christophe,
  
  Package: salome-dev
  Version: 5.1.3-11
  Severity: wishlist
  
  It will be nice to include adm_local directory for each salome 
  base modules
  in the salome-dev package. This will greatly simplify the 
  developpement and
  packaging of new plugins since the configuration step almost refers 
  to
  MODULE/adm_local.
  Otherwise we ave to include some MODULE_SRC in the src package for 
  the plugins
  (see what I have done for salome-code-aster on svn debian science)
 
 This is a good idea.  Right now the package puts the .m4 files all
 together in one big salome.m4 in /usr/share/aclocal (because
 check_KERNEL.m4 and check_GUI.m4 are far too generic names).  But
 something like /usr/share/salome/[module]/adm_local or
 just /usr/share/salome/adm_local could include more than just the .m4
 files.
 
 /usr/share/salome/adm_local is the easiest place to put these.  Will
 that work for you?

I would rather try to stick as much as possible to the original
installation. So my feelings are that adm_local from MODULE_SRC should
be included in /usr/share/salome/MODULE_SRC.
   
   It's pretty easy either way.  André, as someone closer to upstream, what
   do you think makes more sense?  Right now, all of the adm_local files
   install into /usr/adm_local, which violates the FHS.  Should they go
   into a single directory under /usr/share/salome or into separate module
   directories?
  To my point of view, installing the .m4 files in separate module 
  directories like /usr/share/salome/MODULE_SRC makes more sense with
  upstream packaging philosophy. I understand the clearness of a single 
  directory like /usr/share/salome/adm_local but I fear conflicts
  because all modules do not necessarily share the same macro for a same 
  configuration check. 
 
 Well, I think it's a problem that they don't use the same macro in some
 cases, like GUI checks...  But I'll go ahead and do it this way anyway.
Just for information, the 'geom-use-gui-check.patch' patch is broken
on the 5.1.4 version because the macros 'CHECK_SALOME_GUI' and
'CHECK_CORBA_IN_GUI' are now defined in the check_GUI.m4 file of
the GEOM module. From now my solution is to give the path
'${GUI_ROOT_DIR}/adm_local/unix/config_files' as the first argument
to aclocal in build_configure (but it could be a problem in case
a macro really needs to be overloaded locally).
In case you already have a solution for using the same macro, I will
gladly port it to the 5.1.4 version.


André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#587007: salome: Porting patches to Salome 5.1.4 for upstream inclusion

2010-09-14 Thread Andre Espaze
Hi Adam,

After a long break, I am back on the Salome packaging. I was pleased
to discover all your advances and the new building process for every
module. Thank you very much for all your efforts. I think that it is
the right time to start porting the patches to Salome 5.1.4 so we can
submit them to upstream before a new release.

I have enclosed most of the patches for building the KERNEL module with
the 5.1.4 version. Moreover a start of the documentation that I plan
to send for patches submission can be found here:
https://hg.python-science.org/salome-packaging/file/d60a8c2112dc/debian-patch-review.rst

However I wanted to discuss with you on 3 patches that I did not include
because I thought that they concern Debian choices:

- kernel-config-extra.patch
- kernel-doc-images-svg.patch
- kernel-install-without-docs.patch

and this one does not make sense alone because the command is then
renamed in 'debian/rules':

- kernel-python-noexec.patch

In case you have arguments or ideas about how to submit them, I will
include them in the report. Now I plan to continue on the following
modules.

All the best,

André

Allow a separate MPI include directory (used by Debian's /usr/include/mpi link)

Index: salome/KERNEL_SRC_5.1.4/salome_adm/unix/config_files/check_mpi.m4
===
--- a/KERNEL_SRC_5.1.4/salome_adm/unix/config_files/check_mpi.m4
+++ b/KERNEL_SRC_5.1.4/salome_adm/unix/config_files/check_mpi.m4
@@ -28,6 +28,10 @@ AC_ARG_WITH(mpi_lib,
[AC_HELP_STRING([--with-mpi_lib=DIR],[directory path of MPICH lib installation])],
MPILIBREQUESTED=$withval)
 
+AC_ARG_WITH(mpi_include,
+   [AC_HELP_STRING([--with-mpi_include=DIR],[directory path of MPICH header file installation])],
+   MPIINCLUDEREQUESTED=$withval)
+
 AC_ARG_WITH(mpi,
[AC_HELP_STRING([--with-mpi=DIR],[root directory path of MPICH installation])],
MPIREQUESTED=yes,MPIREQUESTED=no)
@@ -59,6 +63,10 @@ if test x$MPIREQUESTED = xyes; then
 MPI_LIBS=-L$MPILIBREQUESTED
   fi
 
+  if test x$MPIINCLUDEREQUESTED != x; then
+MPI_INCLUDES=-I$MPIINCLUDEREQUESTED
+  fi
+
   CPPFLAGS_old=$CPPFLAGS
   CPPFLAGS=$MPI_INCLUDES $CPPFLAGS
   AC_CHECK_HEADER(mpi.h,WITHMPI=yes,WITHMPI=no)
Debian-specific patch to use our libmpi++.so alternatives symlink.

Index: salome/KERNEL_SRC_5.1.4/salome_adm/unix/config_files/check_mpi.m4
===
--- a/KERNEL_SRC_5.1.4/salome_adm/unix/config_files/check_mpi.m4
+++ b/KERNEL_SRC_5.1.4/salome_adm/unix/config_files/check_mpi.m4
@@ -85,7 +85,7 @@ if test x$MPIREQUESTED = xyes; then
 
   if test $WITHMPI = yes;then
 mpi_ok=yes
-MPI_LIBS=$MPI_LIBS -lmpi -lmpio -lmpiCC
+MPI_LIBS=$MPI_LIBS -lmpi -lmpi++
   else
 mpi_ok=no
   fi
The HDF5 library requires MPI in order to work, so the MPI check needs to go
first, and the MPI variables need to be in the HDF5 check.

Index: salome/KERNEL_SRC_5.1.4/salome_adm/unix/config_files/check_hdf5.m4
===
--- a/KERNEL_SRC_5.1.4/salome_adm/unix/config_files/check_hdf5.m4
+++ b/KERNEL_SRC_5.1.4/salome_adm/unix/config_files/check_hdf5.m4
@@ -66,7 +66,7 @@ fi
 dnl hdf5 headers
 
 CPPFLAGS_old=$CPPFLAGS
-CPPFLAGS=$CPPFLAGS $LOCAL_INCLUDES
+CPPFLAGS=$CPPFLAGS $MPI_INCLUDES $LOCAL_INCLUDES
 AC_CHECK_HEADER(hdf5.h,hdf5_ok=yes ,hdf5_ok=no)
 CPPFLAGS=$CPPFLAGS_old
 
@@ -77,7 +77,7 @@ then
 dnl hdf5 library
 
   LIBS_old=$LIBS
-  LIBS=$LIBS $LOCAL_LIBS
+  LIBS=$LIBS $MPI_LIBS $LOCAL_LIBS
   AC_CHECK_LIB(hdf5,H5open,hdf5_ok=yes,hdf5_ok=no)
   LIBS=$LIBS_old
 
@@ -85,9 +85,9 @@ fi
 
 if  test x$hdf5_ok = xyes
 then
-  HDF5_INCLUDES=$LOCAL_INCLUDES
-  HDF5_LIBS=$LOCAL_LIBS -lhdf5 $LOCAL_RLIBS
-  HDF5_MT_LIBS=$LOCAL_LIBS -lhdf5 $LOCAL_RLIBS
+  HDF5_INCLUDES=$MPI_INCLUDES $LOCAL_INCLUDES
+  HDF5_LIBS=$MPI_LIBS $LOCAL_LIBS -lhdf5 $LOCAL_RLIBS
+  HDF5_MT_LIBS=$MPI_LIBS $LOCAL_LIBS -lhdf5 $LOCAL_RLIBS
 fi
 
 if  test x$hdf5_ok = xyes
Index: salome/KERNEL_SRC_5.1.4/configure.ac
===
--- a/KERNEL_SRC_5.1.4/configure.ac
+++ b/KERNEL_SRC_5.1.4/configure.ac
@@ -222,6 +222,14 @@ echo
 
 CHECK_LIBXML
 
+echo
+echo -
+echo checking if MPI is requested by user
+echo -
+echo
+
+CHECK_MPI
+
 if test x$with_onlylauncher = xno; then
 echo
 echo -
@@ -303,14 +311,6 @@ echo
 
 echo
 echo -
-echo checking if MPI is requested by user
-echo -
-echo
-
-CHECK_MPI
-
-echo
-echo -
 echo checking if PaCO++ is requested by user
 echo -
 echo
Remove unnecessary extern C instances and add one necessary one.
Background: One must not #include mpi.h from 

Bug#595909: salome-dev: add path to adm_local files

2010-09-14 Thread Andre Espaze
Hello Adam and Christophe,

Package: salome-dev
Version: 5.1.3-11
Severity: wishlist

It will be nice to include adm_local directory for each salome base 
modules
in the salome-dev package. This will greatly simplify the developpement 
and
packaging of new plugins since the configuration step almost refers to
MODULE/adm_local.
Otherwise we ave to include some MODULE_SRC in the src package for the 
plugins
(see what I have done for salome-code-aster on svn debian science)
   
   This is a good idea.  Right now the package puts the .m4 files all
   together in one big salome.m4 in /usr/share/aclocal (because
   check_KERNEL.m4 and check_GUI.m4 are far too generic names).  But
   something like /usr/share/salome/[module]/adm_local or
   just /usr/share/salome/adm_local could include more than just the .m4
   files.
   
   /usr/share/salome/adm_local is the easiest place to put these.  Will
   that work for you?
  
  I would rather try to stick as much as possible to the original
  installation. So my feelings are that adm_local from MODULE_SRC should
  be included in /usr/share/salome/MODULE_SRC.
 
 It's pretty easy either way.  André, as someone closer to upstream, what
 do you think makes more sense?  Right now, all of the adm_local files
 install into /usr/adm_local, which violates the FHS.  Should they go
 into a single directory under /usr/share/salome or into separate module
 directories?
To my point of view, installing the .m4 files in separate module 
directories like /usr/share/salome/MODULE_SRC makes more sense with
upstream packaging philosophy. I understand the clearness of a single 
directory like /usr/share/salome/adm_local but I fear conflicts
because all modules do not necessarily share the same macro for a same 
configuration check. 

All the best,

André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#587007: salome: Porting patches to Salome 5.1.4 for upstream inclusion

2010-06-30 Thread Andre Espaze
Hello Adam,

...
 The second issue is the Debian constraint to build Salome with a HDF5
 library needing MPI. The corresponding patches (kernel-hdf5-needs-mpi.patch,
 kernel-mpi-includes.patch, kernel-mpi-libs.patch and so on) are
 not so welcomed by upstream.

Really?  Did they give an indication of why?  Well, that's a relatively
small patch for us to maintain.
From what I understood, building hdf5 with MPI is considered as
unsupported. But I think that we can submit those patches and see
if their politics change for a next release.

 Hopefully an alternative way of using
 HDF5 may be provided as suggested by Sylvestre:
 http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=576004

 Thanks.  Unfortunately, the HDF5 group tends to take a long time to
 respond to such requests (often many months, even when a patch is
 available), so we shouldn't count on this to happen before our next
 upload.
I have to confess that I had better hope on that point.

...
 In conclusion what could be the organization for welcoming the future
 Salome 5.1.4 release? Should it be progressively ported on a separate
 branch by using the up-to-date sources [2]? Or would you prefer a one-shot
 transition from 5.1.3?

 If upstream is not going to accept patches before 5.1.4, then I think
 the one-shot transition makes the most sense.  But I appreciate your
 examination of the upstream git repository to determine in advance what
 changes we will need to make in order to port our patches to 5.1.4.
Ok, it sounds fine to me. I am going to be unavailable until the end of
August, then I can try the 5.1.4 transition at the beginning of September
if needed.
By the way, the 5.1.4 Salome version is now available at:
http://www.salome-platform.org/downloads/salome-v5.1.4

All the best,

André




--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#587007: salome: Porting patches to Salome 5.1.4 for upstream inclusion

2010-06-24 Thread Andre Espaze
Package: salome
Version: 5.1.3-10
Severity: wishlist

Last week, Nicolas Chauvat, Sylvestre Ledru, Christophe Trophime and
I met some of the Salome upstream developers in Paris (at Logilab).
We presented the current patches [1] on Salomé 5.1.3 for upstream
inclusion. They are not going to be accepted for this release however most
of them have certainly good chances if they get ported to the upcoming
Salomé 5.1.4. We were invited to try by using the up-to-date version
[2].  I have started to have a look on the main modules, KERNEL, GUI,
GEOM, MED, SMESH and VISU and it seems that most of the patches are
still relevant even if they need to be updated.

However two important maintenance points should be considered when
porting actual patches to the future Salomé 5.1.4. The first is that the
'\*-build-in-tree.patch' family is very unlikely to be accepted. The
packaging process should instead configure, build and install each
module one by one like in the official way. Happily, this advice fits
also one of the Denis Barbier's suggestion for reducing the hard disk
space during Salome building by cleaning every module built directory
after its installation. Would the upstream request be an accelerator
for reorganizing the construction steps?
The second issue is the Debian constraint to build Salome with a HDF5 
library needing MPI. The corresponding patches (kernel-hdf5-needs-mpi.patch,
kernel-mpi-includes.patch, kernel-mpi-libs.patch and so on) are
not so welcomed by upstream. Hopefully an alternative way of using
HDF5 may be provided as suggested by Sylvestre:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=576004

In conclusion what could be the organization for welcoming the future
Salome 5.1.4 release? Should it be progressively ported on a separate
branch by using the up-to-date sources [2]? Or would you prefer a one-shot
transition from 5.1.3? In order to ease the upstream acceptance, I plan
to write a small report in French for explaining every patch purpose
(for the 5.1.3 version, I already did one for KERNEL and GUI modules
but its delivery is finally delayed).

With kind regards,

André

[1] Found in debian/patches of 
http://git.debian.org/git/debian-science/packages/salome.git 
[2] The sources can be obtained with git 
http://git.salome-platform.org/gitweb/



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#587025: salome: Packaging Code Aster module for Salome

2010-06-24 Thread Andre Espaze
Package: salome
Severity: wishlist

The Salome Meca platform has recently been released, see [1].  An archive
made of binaries is available with Salome 5.1.3, Code Aster 10.1 and
the ASTER module for Salome. The latter allows to use some of the Code
Aster functionalities from Salome.

As Salome is already packaged and Code Aster is on the way [2], the Salome
Meca platform ships only three relevant modules written in Python:

- ASTER (allowing to run the Code Aster solver)
- EFICAS (for editing Code Aster files)
- PAL (an EFICAS dependency)

Their sources should be published in a near future on the Code Aster
website [3] and it could then be interesting to bring them to a
salome-meca package. 

With kind regards,

André

[1] http://www.code-aster.org/V2/spip.php?article295
[2] The current version can be browsed at:
http://svn.debian.org/wsvn/debian-science/packages/code-aster/
[3] http://www.code-aster.org



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#584586: Update needed to debian/control

2010-06-10 Thread Andre Espaze
Hi Adam,

While the commit d74f067fc25ed4168473890db05eb74d3932c37a succeeded to
merge libsalome and python2.5-salome into the salome package, it seems
that debian/control was not updated accordingly.
python2.5-salome and libsalome-dev can still be found in the Depends
section of the salome package defined in debian/control. From now,
the solution is to install the salome package by transforming
dependences errors into warnings:

dpkg --force-depends -i salome_5.1.3-9_amd64.deb


All the best,

André

By the way, should I keep you in copy or do you receive any Salomé bug
update automatically?



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#584172: Disabling GetIDMapper inlining for building VISU

2010-06-07 Thread Andre Espaze
Hello Denis,

On Wed, Jun 02, 2010 at 02:13:51PM +0200, Denis Barbier wrote:
 On 2010/6/2 Andre Espaze wrote:
 [...]
  Your solution is however better because the exported symbols
  are in control while in my case I remove every GetIDMapper function
  inlining.
 [...]
 
 It seems that there is some disagreement between us, I believe that
 the sentence above is the root cause.  You say that my solution gives
 a better control on symbols which are exported, but my opinion is that
 both solutions provide the exact same API.  Can you please explain the
 differences induced by those patches?  (For instance by running
 objdump, readelf,... on generated libraries and comparing output)
 Thanks.

Sure, I am going to show the problem on real librairies. I had first
imitated it by the test.cpp code provided in bug 457075, see:
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=457075#400
From the beginning, the problem is specific to g++ optimizations 
that's why I wanted to reflect that fact in my patch. Am I wrong
on that point? The disagreement is maybe just here.

I assume that you run git-buildpackage on the revision 
f57b74db488c91754eadbca263c065ff2022ac71, thus the build has failed
with the status message given by Adam in that bug entry.
The relevant code is in the CONVERTOR directory of the VISU module:

$ cd VISU_SRC_5.1.3/src/CONVERTOR

The VISUConvertor can not be built because GetIDMapper symbols do not exist.
You can check the problem in the corresponding module:

$ readelf -s .libs/libVisuConvertor_la-VISU_MergeFilterUtilities.o | \ 
grep GetIDMapper

However if you remove the O2 optimizations in the CXXFLAGS of the Makefile
(by first making a backup):

$ cp Makefile Makefile.orig
$ sed -i s/^CXXFLAGS = .*/CXXFLAGS = -D_OCC64 -g -D_DEBUG_ -pthread/ \
Makefile

and then force the module to be built again:

$ rm libVisuConvertor_la-VISU_MergeFilterUtilities.lo
$ make

it will work. Now if you check the exported symbols:

$ readelf -s .libs/libVisuConvertor_la-VISU_MergeFilterUtilities.o | \
grep GetIDMapper
759:    113 FUNCWEAK   DEFAULT  395 
_ZN4VISU11GetIDMapperINS_
769:    113 FUNCWEAK   DEFAULT  411 
_ZN4VISU11GetIDMapperINS_
879:    259 FUNCWEAK   DEFAULT  569 
_ZN4VISU11GetIDMapperINS_
880:    259 FUNCWEAK   DEFAULT  571 
_ZN4VISU11GetIDMapperINS_

you should have 4 entries. At that step, I understood that the upstream
code is valid C++ (but not necessarily robust) and thus I wanted to provide
a patch controlling g++ optimizations while respecting their coding style.
That's why you can find the 'if' statements since the beginning. My patch
no-template-function-inline will remove every template function inlining
of GetIDMapper when compiling with O2 optimizations:

$ cd ../../..
$ patch -p1  no-template-function-inline.patch 
$ patch -p1  debian/patches/visu-no-template-inline.patch
$ cd VISU_SRC_5.1.3/src/CONVERTOR
$ mv Makefile.orig Makefile
$ make
$ readelf -s .libs/libVisuConvertor_la-VISU_MergeFilterUtilities.o | \
grep GetIDMapper
89:    113 FUNCWEAK   DEFAULT   48 
_ZN4VISU11GetIDMapperINS_
95: 54 FUNCWEAK   DEFAULT   50 
_ZN4VISU11GetIDMapperINS_
96: 54 FUNCWEAK   DEFAULT   52 
_ZN4VISU11GetIDMapperINS_
97:    113 FUNCWEAK   DEFAULT   54 
_ZN4VISU11GetIDMapperINS_
 
Finally your solution will only export the needed GetIDMapper symbol:

$ git checkout HEAD VISU_MergeFilterUtilities.hxx
$ cd ../../..
$ patch -p1  visu-template-export.patch
$ cd VISU_SRC_5.1.3/src/CONVERTOR
$ make 
$ readelf -s .libs/libVisuConvertor_la-VISU_MergeFilterUtilities.o | \
grep GetIDMapper
68:    113 FUNCWEAK   DEFAULT   26 
_ZN4VISU11GetIDMapperINS_

I agree with you that your solution is valid and robust C++ code so the 
if statements could be removed no matter if the code is compiled with 
or without optimizations or even with others compilers. But I think that
such a decision should be made by upstream because we discovered the 
problem only when working with g++ O2 optimizations. I am open to further
explanations if needed.

Best regards,

André




--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#584124: salome: fails to install (tries to overwrite '/usr/bin/display'

2010-06-07 Thread Andre Espaze
Hi Adam,
 

 
  Are those libraries private to salome?  (In other words, are you sure
  that no other package will be linked against them?)
* If yes, there is no reason to provide libsalome5.1.3-0 and
  libsalome-dev packages, these libs are shipped by another package
  (python2.5-salome?) and can safely be moved into /usr/lib/salome/
* If no, they should indeed go into /usr/lib/ but name collisions will 
  happen.
  Maybe the answer is a mix of both, some libs are private and some
  others are public.
 
 I was thinking the same thing.  Back to André: are there libraries which
 are meant to be shared with other packages, or are they all private to
 Salomé?
To my point of view, all librairies should be private to Salomé. I agree
with the first solution, there is no need to provide libsalome* and
python2.5-salome.
 
  BTW when looking at this issue, I found that python2.5-salome contains
  shared libraries, it thus must be arch:any and not arch:all.  It also
  contains static libraries which can surely be dropped.
  BTW2, I wonder whether salome, python2.5-salome, libsalome5.1.3-0 and
  libsalome-dev could be merged into a single package (if all libs are
  private, of course).
 
 Indeed.  There's still value in having a separate -common package, to
 reduce archive disk footprint.  I'll first try to get the new paths
 working, then do this merger, and upload, then we can think about
 splitting things up differently.  (core, extras, dev, test)
Excellent. I saw anyway that you have just opened bug 584590 where 
we are going to try to solve that problem.

Best regards,

André




--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#584172: Disabling GetIDMapper inlining for building VISU

2010-06-07 Thread Andre Espaze
On Mon, Jun 07, 2010 at 06:06:58PM +0200, Denis Barbier wrote:
 On 2010/6/7 Andre Espaze wrote:
 [...]
     $ patch -p1  no-template-function-inline.patch
     $ patch -p1  debian/patches/visu-no-template-inline.patch
 
 Thanks André for these detailed explanations, but why do you apply
 both patches?  
If you check out revision f57b74db488c, visu-no-template-inline.patch
does not exist yet, so the first patch adds it. 

 I thought that visu-no-template-inline.patch was
 superseding no-template-function-inline.patch. (Adam too since he
 committed only the former)
Yes, no-template-function-inline.patch was only a way to apply my changes
to Adam's repository (we decided to work like that since the beginning so
Adam can review every patch and I do not need write access).

 To make it clear, my point is that #if macro can be dropped from
 visu-no-template-inline.patch, the result will be unchanged:
  * When compiled in debug mode, functions are not inlined and 4
 symbols are exported.
  * When compiled with optimization, only one symbol is exported.
 Since those macros do nothing, it is better to strip them off and
 follow what is described in the C++ faq.
Ok but what about respecting the upstream coding style? Moreover
the macros do nothing only when using g++. I am fine to remove
the if macros but I think that we will need to provide upstream
with more explanations.
 
 If you want no-template-function-inline.patch to be applied, then
 visu-no-template-inline.patch should be dropped.
No, no-template-function-inline.patch is only a communication tool.
I am sorry if it has created confusion. The only patch
that matters for us is visu-no-template-inline.patch. However I did 
not want to add one more patch to the bug and for describing 
reproductible steps I needed to introduce
no-template-function-inline.patch.
 
     $ cd VISU_SRC_5.1.3/src/CONVERTOR
     $ mv Makefile.orig Makefile
     $ make
     $ readelf -s .libs/libVisuConvertor_la-VISU_MergeFilterUtilities.o | \
     grep GetIDMapper
     89:    113 FUNC    WEAK   DEFAULT   48 
  _ZN4VISU11GetIDMapperINS_
     95:     54 FUNC    WEAK   DEFAULT   50 
  _ZN4VISU11GetIDMapperINS_
     96:     54 FUNC    WEAK   DEFAULT   52 
  _ZN4VISU11GetIDMapperINS_
     97:    113 FUNC    WEAK   DEFAULT   54 
  _ZN4VISU11GetIDMapperINS_
 [...]
 
 These symbols are exported because of
 no-template-function-inline.patch, not visu-no-template-inline.patch.
Isn't is the opposite? no-template-function-inline.patch modifies the
Debian repo while visu-no-template-inline.patch modifies the Salome sources.

André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#584172: Disabling GetIDMapper inlining for building VISU

2010-06-02 Thread Andre Espaze
It is finally not necessary to build the module with the -g option,
I have enclosed a patch that disable the GetIDMapper function inlining
when built with g++ and optimizations.


commit 73f793cb0076b6847fc17750a5e1511af502e06c
Author: André Espaze andre.esp...@logilab.fr
Date:   Tue Jun 1 16:53:53 2010 +0200

No GetIDMapper inlining when building VISU

The template function GetIDMapper should not be inlined by g++ when
compiling with optimizations (the Debian build system used -O2) because
the VISUConvertor command needs to link with the resulting symbol
contained in libVisuConvertor.so. The patch is provided in:
	debian/patches/visu-no-template-inline.patch
and will be applied by quilt thanks to the list:
	debian/patches/series

diff --git a/debian/patches/series b/debian/patches/series
index 524b45d..d280ec5 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -26,6 +26,7 @@ med-fix-clean.patch
 visu-hdf5-needs-mpi.patch
 visu-build-in-tree.patch
 visu-flags-typo.patch
+visu-no-template-inline.patch
 visu-fix-clean.patch
 smesh-hdf5-needs-mpi.patch
 smesh-use-gui-check.patch
diff --git a/debian/patches/visu-no-template-inline.patch b/debian/patches/visu-no-template-inline.patch
new file mode 100644
index 000..ead1d55
--- /dev/null
+++ b/debian/patches/visu-no-template-inline.patch
@@ -0,0 +1,28 @@
+The template function GetIDMapper should not be inlined by g++ when
+compiling with optimizations (the Debian build system used -O2) because
+the VISUConvertor command needs to link with the resulting symbol
+contained in libVisuConvertor.so.
+
+diff --git a/VISU_SRC_5.1.3/src/CONVERTOR/VISU_MergeFilterUtilities.hxx b/VISU_SRC_5.1.3/src/CONVERTOR/VISU_MergeFilterUtilities.hxx
+index 52f7440..e4f63ae 100755
+--- a/VISU_SRC_5.1.3/src/CONVERTOR/VISU_MergeFilterUtilities.hxx
 b/VISU_SRC_5.1.3/src/CONVERTOR/VISU_MergeFilterUtilities.hxx
+@@ -93,12 +93,18 @@ namespace VISU
+ TObjectId2TupleGaussIdMap theObjectId2TupleGaussIdMap);
+   
+   templateclass TGetFieldData
++#if (__GNUG__  __OPTIMIZE__)
++  __attribute__((noinline))
++#endif
+   vtkIntArray*
+   GetIDMapper(VISU::TFieldList* theFieldList,
+ 	  TGetFieldData theGetFieldData,
+ 	  const char* theFieldName);
+ 
+   templateclass TGetFieldData
++#if (__GNUG__  __OPTIMIZE__)
++  __attribute__((noinline))
++#endif
+   vtkIntArray*
+   GetIDMapper(vtkDataSet* theIDMapperDataSet,
+ 	  TGetFieldData theGetFieldData,


Bug#584172: Disabling GetIDMapper inlining for building VISU

2010-06-02 Thread Andre Espaze
Hello Denis,

On Wed, Jun 02, 2010 at 10:30:15AM +0200, Denis Barbier wrote:
 On 2010/6/2 Andre Espaze wrote:
  It is finally not necessary to build the module with the -g option,
  I have enclosed a patch that disable the GetIDMapper function inlining
  when built with g++ and optimizations.
 
 I am no C++ expert, but this looks very similar to
http://www.parashift.com/c++-faq-lite/templates.html#faq-35.13
 and it is thus not clear whether this is really a g++ bug.
 Here is a different fix, I tested this approach with Andre's
 test.cpp, but not with salome.
Thank you very much for the suggestion, it works but it seems to 
me that you forgot a 'template' keyword before the symbol export.
I have enclosed a patch tested on my machine, fell free to correct
it if I was wrong. 
For the -9 release, I am anyway going to submit my change to Adam
for getting a working version with VISU. A full build will again
be required because other symbol exports may be needed in other 
modules. Your solution is however better because the exported symbols
are in control while in my case I remove every GetIDMapper function
inlining.
I am neither a C++ expert but I found the FAQ entry different
from our case because the symbol gets exported without -O2 
optimizations. I would not say that it is a g++ bug because
I think that you should control inlining when optimizing
(as I have done in my first patch). However your solution is right and
succeeds to export template function symbols with optimizations.
Once again thank you because I would not have figured it out myself.

Best regards,

André

diff --git a/VISU_SRC_5.1.3/src/CONVERTOR/VISU_MergeFilterUtilities.cxx b/VISU_SRC_5.1.3/src/CONVERTOR/VISU_MergeFilterUtilities.cxx
index 126effb..89d1b50 100755
--- a/VISU_SRC_5.1.3/src/CONVERTOR/VISU_MergeFilterUtilities.cxx
+++ b/VISU_SRC_5.1.3/src/CONVERTOR/VISU_MergeFilterUtilities.cxx
@@ -718,7 +718,12 @@ namespace VISU
 }
 return NULL;
   }
-
+  // Explicit symbol export when compiling with g++ and optimizations,
+  // needed by VISUConvertor during linking
+  #if (__GNUG__  __OPTIMIZE__)
+  template vtkIntArray*
+  GetIDMapperTGetPointData(TFieldList*, TGetPointData, const char* );
+  #endif
 
   //---
   templateclass TGetFieldData


Bug#457075: Salomé packaging

2010-06-02 Thread Andre Espaze
Hello Adam,
 
 First, some great news: Salomé was accepted into unstable!  Now we can
 file multiple independent bugs and track all of these issues separately.
Excellent! I am really glad to hear it.
 
  I feel really sorry for the wrong patch that I sent you, the reason
  is that I forgot to add the CXXFLAGS=-g in the configure command, I was
  building VISU without optimizations. I hope that I did not make you
  loose too much time.
 
 Aha!  That makes a lot of sense.  Don't worry, it didn't take me a lot
 of time to rebuild the package a couple of times.
 
 But this suggests that it might be best to compile only that file using
 -g so the rest of VISU can still be optimized.  What do you think?
In fact g++ can be controlled on function inlining.
 
  Since my last successful build, I have looked
  deeper into the problem and I found that g++ inline small template
  function with -O2. Here I imitate the GetIDMapper definition found in
  src/CONVERTOR/VISU_MergeFilterUtilities.cxx:705:
...
 
 Very interesting!  It sounds like with a lot of hard work you've found
 an important g++ optimization bug...
I am not sure if it is a bug. I guess that template function inlining
should be controlled when optimizing. I have enclosed you a tested patch
for removing template function inlining of GetIDMapper but it should be
applied after the commit:

f57b74db488c91754eadbca263c065ff2022ac71
Thu May 27 21:56:53 2010 -0400
Timestamp the changelog

It means that the last commit should be reverted. I made a successful
build of Salome with VISU by using the corresponding Debian rules 
(that I have enclosed in case you would like to check) but you will
see that VISU is configured in the for loop like others modules.

Finally I have sent my patch to bug 584172 where a better solution
has already been suggested by Denis but requires a new complete build.
Now I will try to improve the package organizations and wait for 
your Salome bug entries on which I can help.

 
  By the way, is the 'git-builpackage' command that exports CXXFLAGS
  to '-O2 -g'? I could not yet understand that step.
 
 I believe dpkg-buildpackage sets those flags.  But it should be possible
 to set them locally within debian/rules or Makefile.am.
Thank you for the explanation, I have just discovered dpkg-buildflags
used by dpkg-buildpackage:

$ dpkg-buildflags --get CXXFLAGS
-g -O2

Best regards,

André
commit 73f793cb0076b6847fc17750a5e1511af502e06c
Author: André Espaze andre.esp...@logilab.fr
Date:   Tue Jun 1 16:53:53 2010 +0200

No GetIDMapper inlining when building VISU

The template function GetIDMapper should not be inlined by g++ when
compiling with optimizations (the Debian build system used -O2) because
the VISUConvertor command needs to link with the resulting symbol
contained in libVisuConvertor.so. The patch is provided in:
	debian/patches/visu-no-template-inline.patch
and will be applied by quilt thanks to the list:
	debian/patches/series

diff --git a/debian/patches/series b/debian/patches/series
index 524b45d..d280ec5 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -26,6 +26,7 @@ med-fix-clean.patch
 visu-hdf5-needs-mpi.patch
 visu-build-in-tree.patch
 visu-flags-typo.patch
+visu-no-template-inline.patch
 visu-fix-clean.patch
 smesh-hdf5-needs-mpi.patch
 smesh-use-gui-check.patch
diff --git a/debian/patches/visu-no-template-inline.patch b/debian/patches/visu-no-template-inline.patch
new file mode 100644
index 000..ead1d55
--- /dev/null
+++ b/debian/patches/visu-no-template-inline.patch
@@ -0,0 +1,28 @@
+The template function GetIDMapper should not be inlined by g++ when
+compiling with optimizations (the Debian build system used -O2) because
+the VISUConvertor command needs to link with the resulting symbol
+contained in libVisuConvertor.so.
+
+diff --git a/VISU_SRC_5.1.3/src/CONVERTOR/VISU_MergeFilterUtilities.hxx b/VISU_SRC_5.1.3/src/CONVERTOR/VISU_MergeFilterUtilities.hxx
+index 52f7440..e4f63ae 100755
+--- a/VISU_SRC_5.1.3/src/CONVERTOR/VISU_MergeFilterUtilities.hxx
 b/VISU_SRC_5.1.3/src/CONVERTOR/VISU_MergeFilterUtilities.hxx
+@@ -93,12 +93,18 @@ namespace VISU
+ TObjectId2TupleGaussIdMap theObjectId2TupleGaussIdMap);
+   
+   templateclass TGetFieldData
++#if (__GNUG__  __OPTIMIZE__)
++  __attribute__((noinline))
++#endif
+   vtkIntArray*
+   GetIDMapper(VISU::TFieldList* theFieldList,
+ 	  TGetFieldData theGetFieldData,
+ 	  const char* theFieldName);
+ 
+   templateclass TGetFieldData
++#if (__GNUG__  __OPTIMIZE__)
++  __attribute__((noinline))
++#endif
+   vtkIntArray*
+   GetIDMapper(vtkDataSet* theIDMapperDataSet,
+ 	  TGetFieldData theGetFieldData,
#!/usr/bin/make -f
# Made with the aid of debmake, by Christoph Lameter,
# based on the sample debian/rules file for GNU hello by Ian Jackson.

package=salome
SALOME_VERSION=5.1.3

# Support multiple makes at once
ifneq (,$(filter 

Bug#584172: Disabling GetIDMapper inlining for building VISU

2010-06-02 Thread Andre Espaze
 
  I have enclosed a patch tested on my machine, fell free to correct
  it if I was wrong.
 [...]
 
 I do not understand why you added #if tests, just adding 'template' at
 the very beginning is enough.  It was not explicit in my previous
 mail, but I tried to find an alternative solution because your's works
 only with g++, and you will need those #if tests if you want to
 forward it upstream.  OTOH mine is portable, and it could be adopted
 more easily by upstream, I guess.  Within Debian, which patch is
 checked in does not matter.
I added the #if tests because the patch is a solution to a problem
occuring only when compiling with g++ and -O2 optimizations. Would
you like upstream to force the symbol export even if the code compiles
without g++ optimizations? Did you check that the template problem occurs
for others C++ compilers before saying that you have a portable solution?

André





--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#457075: Salomé packaging

2010-06-01 Thread Andre Espaze
Hi Adam,
 
 I've installed your patches, but still have the same build error:
 
 ./.libs/libVisuConvertor.so: undefined reference to `vtkIntArray* 
 VISU::GetIDMapperVISU::TGetPointData(VISU::TFieldList*, 
 VISU::TGetPointData, char const*)'
 collect2: ld returned 1 exit status
 
 It seems like if the problem were the missing -L...TOOLSGUI then there
 would have been a missing library instead of a missing symbol...  But
 then, you were able to get it to build with these changes, so there must
 be something I don't understand going on here.
 
 I did install your patches in pieces, not all at once, so I may have
 missed something.  Can you compare the tree currently in git with your
 own, to see if there are some significant differences which would cause
 it to not build?
I feel really sorry for the wrong patch that I sent you, the reason
is that I forgot to add the CXXFLAGS=-g in the configure command, I was
building VISU without optimizations. I hope that I did not make you
loose too much time. Since my last successful build, I have looked
deeper into the problem and I found that g++ inline small template
function with -O2. Here I imitate the GetIDMapper definition found in
src/CONVERTOR/VISU_MergeFilterUtilities.cxx:705:

$ cat test.cpp
class Data{
};

template class TData
void
GetIDMapper(TData data)
{
}

void test(void)
{
GetIDMapper(Data());
}

When compiling without optimizations, the GetIDMapper symbol is built:

$ g++ -c test.cpp  readelf -s test.o | grep GetIDMapper
... _Z11GetIDMapperI4DataEvT_

However -O2 will inline the template function:

$ g++ -O2 -c test.cpp  readelf -s test.o | grep GetIDMapper

For not loosing optimizations on the whole build, I have finally
found that I can control g++:
 
$ cat test.cpp
class Data{
};

template class TData
__attribute__((noinline))
void
GetIDMapper(TData data)
{
}

void test(void)
{
GetIDMapper(Data());
}
$ g++ -O2 -c test.cpp  readelf -s test.o | grep GetIDMapper
... _Z11GetIDMapperI4DataEvT_

So the good new is that I will provide a VISU patch and we can again
configure VISU in the for loop of debian/rules. Will it be possible
to reset the last commit? I deeply apologize for my mistake.  For not
reproducing the same problem, I am going to build a new Salome version
and send you patches carefully once everything works.
By the way, is the 'git-builpackage' command that exports CXXFLAGS
to '-O2 -g'? I could not yet understand that step.

Best regards,

André

 On Thu, 2010-05-27 at 18:30 +0200, Andre Espaze wrote:
  Hello Adam,
  
  I have just succeeded to make a 5.1.3-9 release with VISU, I have
  enclosed the 2 patches. I also wanted to let you know that I have
  understood the runtime problems of VISU but I need to progress
  by steps (my solution is still too messy for being published). I will
  first be glad if the -9 release works for you too.
  
  With a fresh sid version, I got a problem on /bin/sh now linked to dash
  because autoconf publishes configure scripts with /bin/sh at top but
  the KERNEL configure.ac script uses 'function' which is a bash command.
  I could not find a solution yet (even by tweaking SHELL and
  CONFIG_SHELL). 
  
  Then I wonder if doing a:
  chmod -x debian/tmp/usr/lib/python2.5/*-packages/salome/*
  is a nice idea because you can not list directories any more. I got
  this problem while debugging. I will try to provide a solution on that
  point by listing required scripts.
  
  Best regards,
  
  André
  
   On Mon, 2010-05-17 at 12:06 +0200, Andre Espaze wrote:
Hi Adam,

Sorry for the lack of news, I was focus on making VISU work.  I have
succeeded to build a Salome package however the current result is
unfortunately split from our development line. That's why I will first
explain my steps and then ask your advice on the merge as I saw that
serious reorganizations are also pending.

My goal is to provide a functional Salome package for mechanical
engineering even if incomplete. As a consequence the necessary modules
are for me KERNEL, GUI, GEOM, MED, SMESH and VISU. As VISU was failing
in the build process of debian/rules, I decided to build it by hand by
exporting the necessary environment variables. In that case I only had
to modify the gui-build-in-tree.patch (attached to the mail) for making
the libVISU linking work by adding the path to libToolsGUI.
However, back to the complete debian/rules process, the compilation
was still failing in the VISU CONVERTER library because of an absent
template symbol (probably the same problem described in your mail on
the 25th of January). So I needed to investigate the configure and 
build steps of debian/rules but those steps take lot of time. For 
easing my researchs, I decided to work on a package building
only the necessary modules which I called salome

Bug#457075: Salomé packaging

2010-05-27 Thread Andre Espaze
Hello Adam,

I have just succeeded to make a 5.1.3-9 release with VISU, I have
enclosed the 2 patches. I also wanted to let you know that I have
understood the runtime problems of VISU but I need to progress
by steps (my solution is still too messy for being published). I will
first be glad if the -9 release works for you too.

With a fresh sid version, I got a problem on /bin/sh now linked to dash
because autoconf publishes configure scripts with /bin/sh at top but
the KERNEL configure.ac script uses 'function' which is a bash command.
I could not find a solution yet (even by tweaking SHELL and
CONFIG_SHELL). 

Then I wonder if doing a:
chmod -x debian/tmp/usr/lib/python2.5/*-packages/salome/*
is a nice idea because you can not list directories any more. I got
this problem while debugging. I will try to provide a solution on that
point by listing required scripts.

Best regards,

André

 On Mon, 2010-05-17 at 12:06 +0200, Andre Espaze wrote:
  Hi Adam,
  
  Sorry for the lack of news, I was focus on making VISU work.  I have
  succeeded to build a Salome package however the current result is
  unfortunately split from our development line. That's why I will first
  explain my steps and then ask your advice on the merge as I saw that
  serious reorganizations are also pending.
  
  My goal is to provide a functional Salome package for mechanical
  engineering even if incomplete. As a consequence the necessary modules
  are for me KERNEL, GUI, GEOM, MED, SMESH and VISU. As VISU was failing
  in the build process of debian/rules, I decided to build it by hand by
  exporting the necessary environment variables. In that case I only had
  to modify the gui-build-in-tree.patch (attached to the mail) for making
  the libVISU linking work by adding the path to libToolsGUI.
  However, back to the complete debian/rules process, the compilation
  was still failing in the VISU CONVERTER library because of an absent
  template symbol (probably the same problem described in your mail on
  the 25th of January). So I needed to investigate the configure and 
  build steps of debian/rules but those steps take lot of time. For 
  easing my researchs, I decided to work on a package building
  only the necessary modules which I called salome-core. The working
  snapshot is available here:
  http://www.python-science.org/files/salome-core.tar.gz
  and I have attached the resulting debian/rules which configure
  every module separately. I could not find the problem in the 
  previous loop configuration.
  
  From there two questions arise. First, I like the debian/rules file
  of salome-core but I remember that you were against such solution for
  maintenance reasons. Would you like me to adapt it as a loop or did you
  finally change your mind? From now it seems anyway that VISU needs to be
  configured separately. Second, could the current salome-core package be
  a starting point for the reorganizations that we discussed previously?
  For me it has the main advantage to build only the necessary modules,
  thus saving time for every run of Salome packaging. However it will 
  require to write several packages (salome-advance and salome-dev). 
  By comparing to the opencascade package, I understand that the whole
  building should be made in a row and the subpackages splitted by 
  several *.install files.
  
  ...
  -  self.CMD=['SALOME_ContainerPy.py','FactoryServerPy']
  +  self.CMD=['SALOME_Container','FactoryServerPy']
  (I have adapted the patch to the current version.)
  ...
   I just took care of this, the result is in the alioth git repository.
  Thank you for the update. Even if the current version work, I would
  prefer to rename 'SALOME_ContainerPy.py' to 'SALOME_ContainerPy' because
  '/usr/bin/SALOME_Container' already exists and is finally overwritten in
  the install step of debian/rules.
  
  Even if several points still need to be discussed or adapted, the
  good point is that we know now how to build a Salome package with the
  essential modules. Once again, thank you very much for all your efforts.
  I am going to track the remaining bugs at runtime (some menu do not show
  up in SMESH, the results can not be seen in VISU).
  
  All the best,
  
  André
 -- 
 GPG fingerprint: D54D 1AEE B11C CE9B A02B  C5DD 526F 01E8 564E E4B6
 
 Engineering consulting with open source tools
 http://www.opennovation.com/


commit 79661ecbf3ef61cf184ca76dca1402559aa59aa4
Author: André Espaze andre.esp...@logilab.fr
Date:   Tue May 11 16:24:43 2010 +0200

Adding TOOLSGUI to GUI_LDFLAGS for building VISU

diff --git a/debian/patches/gui-build-in-tree.patch b/debian/patches/gui-build-in-tree.patch
index 6fbee7d..9e54e08 100644
--- a/debian/patches/gui-build-in-tree.patch
+++ b/debian/patches/gui-build-in-tree.patch
@@ -1,8 +1,10 @@
 Changes needed to build all modules before installing them.
 
 salome-5.1.3/GUI_SRC_5.1.3/adm_local/unix/config_files/check_GUI.m4~	2010-01-22 19:55

Bug#457075: Salomé packaging

2010-05-17 Thread Andre Espaze
Hi Adam,

Sorry for the lack of news, I was focus on making VISU work.  I have
succeeded to build a Salome package however the current result is
unfortunately split from our development line. That's why I will first
explain my steps and then ask your advice on the merge as I saw that
serious reorganizations are also pending.

My goal is to provide a functional Salome package for mechanical
engineering even if incomplete. As a consequence the necessary modules
are for me KERNEL, GUI, GEOM, MED, SMESH and VISU. As VISU was failing
in the build process of debian/rules, I decided to build it by hand by
exporting the necessary environment variables. In that case I only had
to modify the gui-build-in-tree.patch (attached to the mail) for making
the libVISU linking work by adding the path to libToolsGUI.
However, back to the complete debian/rules process, the compilation
was still failing in the VISU CONVERTER library because of an absent
template symbol (probably the same problem described in your mail on
the 25th of January). So I needed to investigate the configure and 
build steps of debian/rules but those steps take lot of time. For 
easing my researchs, I decided to work on a package building
only the necessary modules which I called salome-core. The working
snapshot is available here:
http://www.python-science.org/files/salome-core.tar.gz
and I have attached the resulting debian/rules which configure
every module separately. I could not find the problem in the 
previous loop configuration.

From there two questions arise. First, I like the debian/rules file
of salome-core but I remember that you were against such solution for
maintenance reasons. Would you like me to adapt it as a loop or did you
finally change your mind? From now it seems anyway that VISU needs to be
configured separately. Second, could the current salome-core package be
a starting point for the reorganizations that we discussed previously?
For me it has the main advantage to build only the necessary modules,
thus saving time for every run of Salome packaging. However it will 
require to write several packages (salome-advance and salome-dev). 
By comparing to the opencascade package, I understand that the whole
building should be made in a row and the subpackages splitted by 
several *.install files.

...
-  self.CMD=['SALOME_ContainerPy.py','FactoryServerPy']
+  self.CMD=['SALOME_Container','FactoryServerPy']
(I have adapted the patch to the current version.)
...
 I just took care of this, the result is in the alioth git repository.
Thank you for the update. Even if the current version work, I would
prefer to rename 'SALOME_ContainerPy.py' to 'SALOME_ContainerPy' because
'/usr/bin/SALOME_Container' already exists and is finally overwritten in
the install step of debian/rules.

Even if several points still need to be discussed or adapted, the
good point is that we know now how to build a Salome package with the
essential modules. Once again, thank you very much for all your efforts.
I am going to track the remaining bugs at runtime (some menu do not show
up in SMESH, the results can not be seen in VISU).

All the best,

André

Changes needed to build all modules before installing them.

diff --git a/GUI_SRC_5.1.3/adm_local/unix/config_files/check_GUI.m4 b/GUI_SRC_5.1.3/adm_local/unix/config_files/check_GUI.m4
index ec07762..73d2eb9 100755
--- a/GUI_SRC_5.1.3/adm_local/unix/config_files/check_GUI.m4
+++ b/GUI_SRC_5.1.3/adm_local/unix/config_files/check_GUI.m4
@@ -59,19 +59,27 @@ if test -f ${SALOME_GUI_DIR}/bin/salome/$1 ; then
   SalomeGUI_ok=yes
   AC_MSG_RESULT(Using SALOME GUI distribution in ${SALOME_GUI_DIR})
 
+  GUI_LDFLAGS=-L${SALOME_GUI_DIR}/lib${LIB_LOCATION_SUFFIX}/salome
+  GUI_CXXFLAGS=-I${SALOME_GUI_DIR}/include/salome
+elif test -f ${SALOME_GUI_DIR}/src/$3/$1.cxx ; then
+  SalomeGUI_ok=yes
+  AC_MSG_RESULT(Using SALOME GUI source directory in ${SALOME_GUI_DIR})
+
+  GUI_LDFLAGS=-L${SALOME_GUI_DIR}/src/SUIT -L${SALOME_GUI_DIR}/src/Qtx -L${SALOME_GUI_DIR}/src/VTKViewer -L${SALOME_GUI_DIR}/src/SVTK -L${SALOME_GUI_DIR}/src/OBJECT -L${SALOME_GUI_DIR}/src/SalomeApp -L${SALOME_GUI_DIR}/src/Session -L${SALOME_GUI_DIR}/src/LightApp -L${SALOME_GUI_DIR}/src/OCCViewer -L${SALOME_GUI_DIR}/src/CAM -L${SALOME_GUI_DIR}/src/SOCC -L${SALOME_GUI_DIR}/src/Event -L${SALOME_GUI_DIR}/src/Prs -L${SALOME_GUI_DIR}/src/STD -L${SALOME_GUI_DIR}/src/PyConsole -L${SALOME_GUI_DIR}/src/SPlot2d -L${SALOME_GUI_DIR}/src/Plot2d -L${SALOME_GUI_DIR}/src/ObjBrowser -L${SALOME_GUI_DIR}/src/PyInterp -L${SALOME_GUI_DIR}/src/LogWindow -L${SALOME_GUI_DIR}/src/GLViewer -L${SALOME_GUI_DIR}/src/SUPERVGraph -L${SALOME_GUI_DIR}/src/SUITApp -L${SALOME_GUI_DIR}/src/QxScene -L${SALOME_GUI_DIR}/src/TOOLSGUI
+  GUI_CXXFLAGS=-I${SALOME_GUI_DIR}/src/SVTK -I${SALOME_GUI_DIR}/src/OBJECT -I${SALOME_GUI_DIR}/src/VTKViewer -I${SALOME_GUI_DIR}/src/SUIT -I${SALOME_GUI_DIR}/src/Qtx -I${SALOME_GUI_DIR}/src/SalomeApp -I${SALOME_GUI_DIR}/src/LightApp 

Bug#457075: Salomé packaging

2010-05-05 Thread Andre Espaze
Hi Adam,

Sorry for the delay, I have missed the -6 release but I have
just built the -7 one which works fine. I have updated the
documentation on:
http://wiki.debian.org/BuildingSalome
It seems that building Med dependencies by hand is no longer needed
because libmed-2.3.6-2 is now available in Debian sid.  I only had one
problem during the installation step with the 'salome.desktop' file
which did not exist but it may be an error on my side. I will see
if I can reproduce it in the next build.

 First, the -dev dependency extends beyond libsalome-dev.  For example,
 the GEOM module requires libTKOpenGl.so which is in
 libopencascade-visualization-dev so salome must depend on at least that
 package as well.  There are likely others.  Can some of you help me to
 figure out what is required?  If we miss a couple before upload, that's
 probably okay, we'll just get even more bug reports for these than we
 otherwise would. :-)
I can help on that part once the VISU module is working, I have just
added a ticket on the Logilab's project:
http://www.python-science.org/ticket/1841
 
 Later we can hopefully modify Salomé's shared lib loading code so it
 detects the soname at build time and loads that file at runtime, as this
 is a bug.  If anyone can figure out an easy way to do that now, great;
 otherwise we need to add a few -dev packages to the dependencies.
I have added a ticket too:
http://www.python-science.org/ticket/1822
but to my point of view such change should be difficult.
 
 Second, I've cut the number of lintian warnings by dozens by making
 the .py files non-executable.  The one problem that results is during
 startup, which can be solved by the following patch:
 
 diff --git a/KERNEL_SRC_5.1.3/bin/runSalome.py 
 b/KERNEL_SRC_5.1.3/bin/runSalome.py
 index d67d6b0..550a6c2 100755
 --- a/KERNEL_SRC_5.1.3/bin/runSalome.py
 +++ b/KERNEL_SRC_5.1.3/bin/runSalome.py
 @@ -191,7 +191,7 @@ class ContainerPYServer(Server):
  if sys.platform == win32:
self.CMD=[os.environ[PYTHONBIN], 
 '\'+os.environ[KERNEL_ROOT_DIR] + 
 '/bin/salome/SALOME_ContainerPy.py'+'\','FactoryServerPy']
  else:
 -  self.CMD=['SALOME_ContainerPy.py','FactoryServerPy']
 +  
 self.CMD=['python','/usr/lib/python2.5/site-packages/salome/SALOME_ContainerPy.py','FactoryServerPy']
  
  # ---
  
 My python is even worse than my French, so that's the best I can do, but
 I'm certain there's a better way.  Can someone help my pathetic python,
 hopefully in a way that will be acceptable to upstream?
I think that SALOME_ContainerPy.py should be considered as an executable
script because its first line starts with:

#! /usr/bin/env python

As a consequence, it should live inside /usr/bin like others commands
so no patch is required.  The only reproach to upstream may be to keep
the '.py' extension which is confusing because SALOME_ContainerPy is
supposed to be a command.  I have moved SALOME_ContainerPy.py to /usr/bin
and made it executable and Salome was still working. I think that it
should be possible to add this behavior to the Debian package during
the installation step.  What is your opinion on this point? Would you
like me to work on a patch?


All the best,

André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#457075: Salomé packaging

2010-04-22 Thread Andre Espaze
Hi Adam,

  
   I guess that it is not relevant to run the 5.1.3-4 build again 
   if this version works for you. I am now starting a complete build
   with all modules.
  
  I've built -5 with everything but VISU and NETGENPLUGIN (which don't
  build), they're at http://lyre.mit.edu/~powell/salome/ .
  
  There's lots more to do, but having a version which runs seems like a
  big milestone.  If you could test it, that would be great.  This may
  even be worth uploading, so it gets started in the NEW queue, and if all
  goes well we can start using the Debian bug reporting system.
 It works that time, I only had to export the LD_LIBRARY_PATH variable 
 in runSalome, I have attached the patch.
 
Now that the first version work, I have added the link BuildingSalome 
to the page:
http://wiki.debian.org/DebianScience/Engineering
Comments and changes are very welcome.

All the best,

André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#457075: Salomé packaging

2010-04-21 Thread Andre Espaze
Hi Adam,

 
  I guess that it is not relevant to run the 5.1.3-4 build again 
  if this version works for you. I am now starting a complete build
  with all modules.
 
 I've built -5 with everything but VISU and NETGENPLUGIN (which don't
 build), they're at http://lyre.mit.edu/~powell/salome/ .
 
 There's lots more to do, but having a version which runs seems like a
 big milestone.  If you could test it, that would be great.  This may
 even be worth uploading, so it gets started in the NEW queue, and if all
 goes well we can start using the Debian bug reporting system.
It works that time, I only had to export the LD_LIBRARY_PATH variable 
in runSalome, I have attached the patch.

I could run Salome with the GEOM, MED, SMESH and YACS modules which 
are loaded by default. The MULTIPTR and HELLO modules work too when
added on the command line. The PYHELLO module seems to have a loading
problem but that is a developer example. The remaining modules do not
seem to have a GUI. I plan to work on the VISU module now once the 
patches are sent to upstream. 
Thank you very much for the great work, I am glad to see a first 
working version in Debian.

All the best,

André
commit 30d1a66cc4b1a4023a1397391ed8bdcf570cd50b
Author: Andre Espaze andre.esp...@logilab.fr
Date:   Wed Apr 21 09:39:46 2010 +0200

LD_LIBRARY_PATH is required for runSalome

Exporting the variable LD_LIBRARY_PATH is required for starting Salome
even if the variable points to a default research path.

diff --git a/debian/runSalome.in b/debian/runSalome.in
index a7dddb7..a892a75 100644
--- a/debian/runSalome.in
+++ b/debian/runSalome.in
@@ -23,6 +23,7 @@ export PYTHONPATH=$PYTHONPATH:@pythondir@/omniORB:${SALOME_PYTHON_DIR}
 # This is a major kludge!  But it's necessary for Salome to open with .py files
 # in the right place...
 export PATH=$PATH:${SALOME_PYTHON_DIR}
+export LD_LIBRARY_PATH=${prefix}/lib:$LD_LIBRARY_PATH
 export casro...@prefix@
 export CSF_GraphicShr=${CASROOT}/lib/libTKOpenGl.so
 export CSF_UnitsLexicon=${CASROOT}/share/opencascade/6.3.0/src/UnitsAPI/Lexi_Expr.dat


Bug#457075: Salomé packaging

2010-04-21 Thread Andre Espaze
Hi Sylvestre,

On Tue, Apr 20, 2010 at 04:18:45PM +0200, Sylvestre Ledru wrote:
 Le mardi 20 avril 2010 à 15:25 +0200, Andre Espaze a écrit :
  
   By the way, have you had any luck with asking upstream to adopt some
  of
   these patches?  Let me know if you need more information about any
  of
   them.
  I discussed that point with Nicolas yesterday. I am supposed to submit
  the KERNEL and GUI patches this week. 
 Great!
 Do you have some information on the potential inclusions of these
 patches ?
Nicolas knows some of the upstream developers so we hope to succeed
the inclusions but there is no guarantee.
 
 By the way, Christophe Trophime updated the Code Aster packages that
 Adam and I wrote a while ago.
 I am going to review them for their inclusions into Debian.
I am interested to help on that task once the first Salome version run.
Moreover the metis package will also be useful for the MED module
of Salome.

See you soon,

André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#457075: Salomé packaging

2010-04-20 Thread Andre Espaze
Hi Adam,

 Apologies for the long delay in replying since your message arrived.
 I've been very busy, and just yesterday finally compiled Salomé.
No problem, I have been busy too last week and I am now coming back
on Salomé.
 
  I made the KERNEL and GUI modules work this morning on the 5.1.3-5
  release. I have enclose the patch 'kernel-gui-building.patch' that
  should be applied on the revision:
  
  862cebe157a4ce50984d6fc15758da7d3ca96e2a
  Thu Mar 4 20:29:30 2010
  Remove troublesome /usr/bin subdirectory from HXX2SALOME.
  
  by:
  
  patch -p1  kernel-gui-building.patch
  
  The steps for running the resulting Salome are provided inside the patch.
  
  For me, the main problem was that I did not install the shared 
  librairies stored in the package libsalome-dev. It explains why
  I could run Salome by ajusting environment variables to debian/tmp/usr 
  but never once installed on the system.
 
 Indeed, you found the problem!  The shared libraries themselves are not
 in the -dev package, only the symlinks are, but for some reason the -dev
 package is required to run Salomé.  We'll have to investigate why...
Ok, I will add this point to the ticket list.
 
  By the way, it is correct 
  to have the line:
  usr/lib/*.so
  inside 'debian/libsalome-dev.files'? 
 
 That's fine: the shared library package gets the real shared libraries
 *.so.0.0.0 , and -dev gets the symlinks *.so .  If the library loading
 code needs the .so files, then that's something to fix.
Thanks for clarifying this point, it makes sense now.
 
  I guess that it is not relevant to run the 5.1.3-4 build again 
  if this version works for you. I am now starting a complete build
  with all modules.
 
 I've built -5 with everything but VISU and NETGENPLUGIN (which don't
 build), they're at http://lyre.mit.edu/~powell/salome/ .
I am building it but the test server got a problem during the night
so I had to start from the beginning this morning. However I could 
run the GEOM, MED and SMESH modules without problem on the last build.
 
 There's lots more to do, but having a version which runs seems like a
 big milestone.
Yes, I agree.

  If you could test it, that would be great.  This may
 even be worth uploading, so it gets started in the NEW queue, and if all
 goes well we can start using the Debian bug reporting system.
Excellent, I keep you in touch once I can test.
 
 By the way, have you had any luck with asking upstream to adopt some of
 these patches?  Let me know if you need more information about any of
 them.
I discussed that point with Nicolas yesterday. I am supposed to submit
the KERNEL and GUI patches this week. Then I will start to review and 
test the remaining patches but they look fine. I will also try to have
a look at the VISU module because post-processing is an important 
use case.

Best regards,

André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#457075: Salomé packaging

2010-04-07 Thread Andre Espaze
Hi Adam,

 
  Concerning the 5.1.3-5, I can not start Salomé from debian/tmp/usr. The
  funny point is that I can run Salomé when compiling it by hand in a
  dedicated directory. An identified problem was the line:
  
  chmod -x $(CURDIR)/debian/tmp/usr/lib/python2.5/*-packages/salome/*
  
  however I still get the 'Study server is not found' error at startup. I
  have reached a point where I am comparing the configuration steps,
  I hope to identify the problem soon.
 
 Thanks for your work on this.  Between the two of us, I hope we can find
 out what's breaking this soon...
I made the KERNEL and GUI modules work this morning on the 5.1.3-5
release. I have enclose the patch 'kernel-gui-building.patch' that
should be applied on the revision:

862cebe157a4ce50984d6fc15758da7d3ca96e2a
Thu Mar 4 20:29:30 2010
Remove troublesome /usr/bin subdirectory from HXX2SALOME.

by:

patch -p1  kernel-gui-building.patch

The steps for running the resulting Salome are provided inside the patch.

For me, the main problem was that I did not install the shared 
librairies stored in the package libsalome-dev. It explains why
I could run Salome by ajusting environment variables to debian/tmp/usr 
but never once installed on the system. By the way, it is correct 
to have the line:
usr/lib/*.so
inside 'debian/libsalome-dev.files'? 

I guess that it is not relevant to run the 5.1.3-4 build again 
if this version works for you. I am now starting a complete build
with all modules.

Best regards,

André
commit 82657a24389490922d070d883cb79730caabc69e
Author: Andre Espaze andre.esp...@logilab.fr
Date:   Wed Apr 7 10:43:38 2010 +0200

Building Salome with KERNEL and GUI modules for testing

This Salome version is only built with the KERNEL and GUI
modules for testing that the graphical server can be started.
As a result all references to others modules have been removed
as well as any files that will not exist at the end of the build.
The only line relevant for others modules is:

chmod -x $(CURDIR)/debian/tmp/usr/lib/python2.5/*-packages/salome/*

which should be removed or required code modifications.

The steps for testing Salome once the git-buildpackage command
is finished are:

  su
  dpkg -i libsalome5.1.3-0_5.1.3-5_amd64.deb
  dpkg -i python2.5-salome_5.1.3-5_amd64.deb
  dpkg -i salome-common_5.1.3-5_all.deb
  dpkg -i salome_5.1.3-5_amd64.deb
  dpkg -i libsalome-dev_5.1.3-5_all.deb
  exit
  runSalome

diff --git a/debian/rules b/debian/rules
index 7cee7e3..cc7ac7d 100755
--- a/debian/rules
+++ b/debian/rules
@@ -25,29 +25,7 @@ endif
 # - BLSURFPLUGIN, GHS3D[PRL]PLUGIN and HexoticPLUGIN require non-free
 #   libraries, and will not be part of the Debian package.
 SALOME_MODULES = KERNEL_SRC_$(SALOME_VERSION) \
-  GUI_SRC_$(SALOME_VERSION) \
-  GEOM_SRC_$(SALOME_VERSION) \
-  MED_SRC_$(SALOME_VERSION) \
-  VISU_SRC_$(SALOME_VERSION) \
-  SMESH_SRC_$(SALOME_VERSION) \
-  NETGENPLUGIN_SRC_$(SALOME_VERSION) \
-  YACS_SRC_$(SALOME_VERSION) \
-  MULTIPR_SRC_$(SALOME_VERSION) \
-  COMPONENT_SRC_$(SALOME_VERSION) \
-  RANDOMIZER_SRC_$(SALOME_VERSION) \
-  SIERPINSKY_SRC_$(SALOME_VERSION) \
-  LIGHT_SRC_$(SALOME_VERSION) \
-  PYLIGHT_SRC_$(SALOME_VERSION) \
-  HELLO_SRC_$(SALOME_VERSION) \
-  PYHELLO_SRC_$(SALOME_VERSION) \
-  CALCULATOR_SRC_$(SALOME_VERSION) \
-  PYCALCULATOR_SRC_$(SALOME_VERSION) \
-  HXX2SALOME_SRC_$(SALOME_VERSION)
-# XDATA_SRC_$(SALOME_VERSION) \
-  BLSURFPLUGIN_SRC_$(SALOME_VERSION) \
-  GHS3DPLUGIN_SRC_$(SALOME_VERSION) \
-  GHS3DPRLPLUGIN_SRC_$(SALOME_VERSION) \
-  HexoticPLUGIN_SRC_$(SALOME_VERSION)
+  GUI_SRC_$(SALOME_VERSION)
 
 clean:
 	dh_testdir
@@ -150,22 +128,6 @@ build-indep-stamp: configure-stamp
 	make -C KERNEL_SRC_$(SALOME_VERSION)/doc usr_docs dev_docs -j $(NJOBS) DESTDIR=$(CURDIR)/debian/tmp bindir=/usr/bin libdir=/usr/lib docdir=/usr/share/doc/salome-doc
 	echo; echo GENERATING DOCUMENTATION IN MODULE GUI; echo
 	make -C GUI_SRC_$(SALOME_VERSION)/doc usr_docs dev_docs -j $(NJOBS) DESTDIR=$(CURDIR)/debian/tmp bindir=/usr/bin libdir=/usr/lib docdir=/usr/share/doc/salome-doc
-	echo; echo GENERATING DOCUMENTATION IN MODULE GEOM; echo
-	make -C GEOM_SRC_$(SALOME_VERSION)/doc usr_docs dev_docs -j $(NJOBS) DESTDIR=$(CURDIR)/debian/tmp bindir=/usr/bin libdir=/usr/lib docdir=/usr/share/doc/salome-doc
-	echo; echo GENERATING DOCUMENTATION IN MODULE MED; echo
-	make -C MED_SRC_$(SALOME_VERSION)/doc dev_docs -j $(NJOBS) DESTDIR=$(CURDIR)/debian/tmp bindir=/usr/bin libdir=/usr/lib docdir=/usr/share/doc/salome-doc
-	echo; echo GENERATING DOCUMENTATION IN MODULE HELLO; echo
-	make -C HELLO_SRC_$(SALOME_VERSION)/doc usr_docs -j $(NJOBS) DESTDIR=$(CURDIR)/debian/tmp bindir=/usr/bin libdir=/usr/lib docdir=/usr/share/doc/salome-doc
-	echo; echo GENERATING DOCUMENTATION IN MODULE PYHELLO; echo
-	make -C PYHELLO_SRC_$(SALOME_VERSION)/doc usr_docs -j $(NJOBS) DESTDIR=$(CURDIR)/debian/tmp bindir=/usr/bin

Bug#457075: Salomé packaging

2010-04-06 Thread Andre Espaze
Hi Adam,

 Hi everyone and apologies for the long delay since I last wrote.
No problem, I was also busy on others projects but I am back 
on Salomé for this week and I should work full time on it 
for the week starting on the 19th of april.
 
 I've been getting VirtualBox to work, as suggested by Sylvestre (thanks
 again!).  I spent a while trying to get shared folders to work, then
 realized just this morning that I could just download stuff from the
 net, so I finally have a pure unstable environment to (try to) run
 Salomé.
 
 André, I'm having trouble running version 5.1.3-4 from
 http://lyre.mit.edu/~powell/salome/ -- I get the same error as with more
 recent versions: Study server is not found.  Are you setting some
 environment variables to make it work?
In fact I did not run an installed version because my system could not
build the binary packages due to a lack of memory. That is one of the
reason why I work now in a virtual machine on a dedicated server.
For using the 5.1.3-4, I simply ran:

./debian/rules install

and then I have started Salome from the debian/tmp/usr directory by 
ajusting the environment variables as you did in runSalome. Would you
be interested if I run a build of the 5.1.3-4 again? I could try to
find back every step.

Concerning the 5.1.3-5, I can not start Salomé from debian/tmp/usr. The
funny point is that I can run Salomé when compiling it by hand in a
dedicated directory. An identified problem was the line:

chmod -x $(CURDIR)/debian/tmp/usr/lib/python2.5/*-packages/salome/*

however I still get the 'Study server is not found' error at startup. I
have reached a point where I am comparing the configuration steps,
I hope to identify the problem soon.

Best regards,

André





--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#457075: Salomé packaging

2010-03-11 Thread Andre Espaze
Hi Adam,

  The last working version was actually the -4:
  
  c56f196854092f0dc0d222de71de1a4532f214ec
  Release 5.1.3-4 Look ma, it builds!
 
 That's what I thought.  I tried that one today (backported to Ubuntu
 Karmic), and it didn't work.  I guess I'll have to bring X up in the
 chroot to check it there, then start the bisect process.
It still does not work but I wanted to let you know where I am. 
I have worked at revision:
862cebe157a4ce50984d6fc15758da7d3ca96e2a
Thu Mar 4 20:29:30 2010
By applying the following patches on the KERNEL module:
kernel-safe-include.patch
kernel-mpi-includes.patch
kernel-mpi-libs.patch
kernel-hdf5-needs-mpi.patch
kernel-remove-mpi-undefs.patch
and:
gui-mpich-mpi.patch
on the GUI one, it works when installing it by hand in a local
directory (I have used ~/sroot/). However it does not work when
following the debian/rules install path. I thought that lines 206 
and 207 of debian/rules where the problem:

mv debian/tmp/usr/bin/*.py \
$(CURDIR)/debian/tmp/usr/lib/python2.5/*-packages/salome/
chmod -x $(CURDIR)/debian/tmp/usr/lib/python2.5/*-packages/salome/*

but it is not enough to make it works. For all the processing at
line 200, I do not understand where the files are. By running for 
example:

find /usr/ -name config_appli.xml

I do not find anything however I can find this file in my local ~/sroot
directory. However I may have messed the install process, I am running
a new build now.

Then I guess that we need to build Salome with hdf5 including mpi
because we can not force the user to use libhdf5-serial when he will
want to install Salome. Dealing with patches make the debuging harder
for getting a first running version but I think that you have solved the
problem. I have tried with and without hdf5 and I get the same behavior
for the KERNEL part.

I keep you in touch once my new version is running, I am getting 
more confortable with the Debian packaging tools.

With kind regards,

André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#457075: Salomé packaging

2010-03-09 Thread Andre Espaze
Hi Adam
 
 On Thu, 2010-03-04 at 12:12 -0500, Adam C Powell IV wrote:
  On Thu, 2010-03-04 at 17:36 +0100, Andre Espaze wrote:
   However, I got a runtime error with my version, the study server is 
   not found even if I only work with the KERNEL and GUI modules. I am
   going to run a new build at revision:
   
   1a1c81a479c5c021ff685046623831ffc3621ccf
   Wed Mar 3 17:36:30
  
  I am having the same problem, and don't know how to fix it.  I wonder
  what has changed since you were last able to run it.  I guess we should
  do a git bisect, but given the build time, that will take quite a while!
 
 Which was the last version that ran without this error?  I'd like to
 figure out the differences and try to get this working.  I've tried a
 couple of changes to no avail, and this is the last thing keeping me
 from a -5 release...
The last working version was actually the -4:

c56f196854092f0dc0d222de71de1a4532f214ec
Release 5.1.3-4 Look ma, it builds!

Obviously, the KERNEL module works correctly but the GUI one does
not want to start. I am compiling the GUI module separately for comparing
the build processes.

Kind regards,

André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#457075: Salomé packaging

2010-03-04 Thread Andre Espaze
Hi Adam,


On Tue, 2010-02-23 at 10:05 +0100, Andre Espaze wrote:
  Until salome is uploaded into Debian, it will not be possible to 
  use the
  bug tracking system for individual issues.  At this point, the only
  bug in Debian is that salome isn't there -- #457075. :-)
 Ok, so from now I organise tickets on
 http://www.python-science.org/project/salome-packaging
 and I keep you in touch with my progress.

Great, thanks.  I'm making pretty quick progress (well, as much as can
be done in one or two builds per day), I think the first upload should
come fairly soon, within a week or so.
   Ok, today I have worked on your revision:
   
   c56f196854092f0dc0d222de71de1a4532f214ec
   Release 5.1.3-4 Look ma, it builds!
   
   of the master branch or do you have another branch that I could follow?
  
  That's the current public branch now.  I'm working now on my own branch,
  which doesn't build because of a problem with $(wildcard...) in the
  rules file which I mentioned on debian-science.  I'm testing a possible
  solution based on Aaron Ucko's reply, and will push everything to alioth
  if/when it works.
 
 Everything works now, so I just pushed a bunch of changes to alioth,
 including the LIGHT and PYLIGHT CORBA-free GUI modules.
Thank you very much for the push, I have succeeded a complete build
at revision:

5f1c9676ce493cb5f31f01c8a12c4f697308e2fe
Updated time stamp.
Fri Feb 26

However I had to set up a virtual machine with 20Go of disk and 1024Mo 
of RAM on a server. I had finally to move away from the chrooted
environment on my local machine. For the installation part, it seems
that there is a cyclic dependency between salome and salome-common.
Obviously salome-common should not depend on salome.

 
 I'm adding MULTIPR now, which should be the last module (XDATA and YACS
 gave me some trouble, the others have non-free dependencies).  Then I'm
 going to do a .desktop file so it can run from the Applications or KDE
 menu, and when that's done it should be set to upload!
 
 Oh, except for the HDF5 and MED issue.  Well, when bug 510057 closes,
 then it will be ready to upload.
For that point and also the packaging steps, I have started a draft
of documentation on the mercurial repo:
http://hg.python-science.org/salome-packaging/
in the file:
debian-packaging.rst
It is supposed to end up on the debian wiki. In case you have time
to read it, would you have comments? I really feel beginner for the 
Debian packaging process.
Else I have also uploaded the documentation for the modules MED, SMESH
and VISU.

However, I got a runtime error with my version, the study server is 
not found even if I only work with the KERNEL and GUI modules. I am
going to run a new build at revision:

1a1c81a479c5c021ff685046623831ffc3621ccf
Wed Mar 3 17:36:30

I saw that you already fixed the 'killSalome' command problem pointing
on python2.4.

Kind regards,

André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#457075: Salomé packaging

2010-02-25 Thread Andre Espaze
Hi Adam,
 
 On Tue, 2010-02-23 at 10:05 +0100, Andre Espaze wrote:
   Until salome is uploaded into Debian, it will not be possible to use the
   bug tracking system for individual issues.  At this point, the only
   bug in Debian is that salome isn't there -- #457075. :-)
  Ok, so from now I organise tickets on
  http://www.python-science.org/project/salome-packaging
  and I keep you in touch with my progress.
 
 Great, thanks.  I'm making pretty quick progress (well, as much as can
 be done in one or two builds per day), I think the first upload should
 come fairly soon, within a week or so.
Ok, today I have worked on your revision:

c56f196854092f0dc0d222de71de1a4532f214ec
Release 5.1.3-4 Look ma, it builds!

of the master branch or do you have another branch that I could follow?
  
I would like to add such
documentation do the salome.git repo, inside the debian directory. I
have added the following ticket:
http://www.python-science.org/ticket/1403
that will certainly move.
   
   Good point.  I haven't used the Debian Science Wiki, perhaps that's a
   good place to put such documentation at this point.
  Perfect, I will add a page on the wiki as soon as my documentation is
  ready. I will restart from a clean sid install today. I plan to document
  every module so it will help me to supply the 'debian/rules' patch
  of ticket http://www.python-science.org/ticket/1405.
 
 Thanks.  I just changed from --with-netgen to NETGENHOME so there should
 be no more unrecognized option warnings.  But NETGENPLUGIN doesn't
 work because of a missing header file.  I'm going to work on the netgen
 package and see if I can get the Salomé interface changes in there
 without disrupting the existing interface and applications which link to
 it.
 
 Before you start on the patch, let's discuss its utility: how useful
 will it be to have separate configure commands and a *very* long
 configure-stamp target in debian/rules, vs. the current loop?  I think
 my preference is the loop because it's short and easy to maintain.
I think you are right, I need a documentation for every module because 
I should build Salome for other distribution as well. However that is
not relevant to mix such work with debian/rules. The start of my 
documentation can be found here:
https://hg.python-science.org/salome-packaging/

 
 
   My suspicion is that the geom issue might due to incorrect directory
   usage for the OpenCascade data files.  I've just added tests for their
   location in check_cas.m4, and will change
   KERNEL/bin/appliskel/env.d/envProducts.sh to use the new CAS_LIBDIR and
   CAS_DATADIR variables accordingly (will need to move it to
   envProducts.sh.in and have configure generate the .sh file).
  Unfortunately, I still get the same crash for GEOM with the SIGFPE 
  Arithmetic exception, forcing me to kill Salome. I plan to investigate
  this problem as soon as the documentation is ready.
 
 Thanks.  The runSalome script should be working now, if not let me know
 what kind of errors it gives.
It was still crashing but I finally found the problem by exporting:

DISABLE_FPE=1

before running Salomé. You may want to look at:
https://hg.python-science.org/salome-packaging/rev/8ab11e56314a
for more details.
By the way, I did not need the variables CASROOT, CSF_GraphicShr, 
CSF_UnitsLexicon and CSF_UnitsDefinition for running the GEOM module.
Moreover in debian/runSalome.in, the variables CSF_UnitsLexicon and 
CSF_UnitsDefinition seems to point on a wrong path. The correct one 
should be:
share/opencascade/6.3.0/src
instead of:
share/opencascade
but you may use another opencascade package version.

I keep you in touch with the build process, I again ran out of disk space 
today. But thank you very much for all your efforts, I feel that it is 
going forward.

Kind regards,

André




--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#457075: Salomé packaging

2010-02-23 Thread Andre Espaze
Hi Adam,

 
 Until salome is uploaded into Debian, it will not be possible to use the
 bug tracking system for individual issues.  At this point, the only
 bug in Debian is that salome isn't there -- #457075. :-)
Ok, so from now I organise tickets on
http://www.python-science.org/project/salome-packaging
and I keep you in touch with my progress.
 
...
 
  I would like to add such
  documentation do the salome.git repo, inside the debian directory. I
  have added the following ticket:
  http://www.python-science.org/ticket/1403
  that will certainly move.
 
 Good point.  I haven't used the Debian Science Wiki, perhaps that's a
 good place to put such documentation at this point.
Perfect, I will add a page on the wiki as soon as my documentation is
ready. I will restart from a clean sid install today. I plan to document
every module so it will help me to supply the 'debian/rules' patch
of ticket http://www.python-science.org/ticket/1405.
 
   You can get and build my latest salome package by the same git clone
   command but substitute salome for med-fichier.  It still needs a lot of
   tweaking before it is ready to upload into Debian unstable.  And first
   the patched HDF5 package needs to go in, along with the new med-fichier.
  I have succeeded to build salome at revision
  181964c525693f410d01646a616e5d94f05c7c9d but I got only KERNEL and GUI
  running out of the box at the end. I plan to investigate on the GEOM
  runtime problem first, is it allright for you?
 
 Yes.  But please try re-cloning it, I have made a lot of progress, and
 some things might work now that didn't before.  I think your tickets
 1398, 1400 and 1402 are fixed now.
Congratulations, your Release 5.1.3-4 worked fine and closed those three
tickets concerning MED build and install as well as GEOM install. So 
now the MED and GEOM modules are present when starting Salome.
 
 My suspicion is that the geom issue might due to incorrect directory
 usage for the OpenCascade data files.  I've just added tests for their
 location in check_cas.m4, and will change
 KERNEL/bin/appliskel/env.d/envProducts.sh to use the new CAS_LIBDIR and
 CAS_DATADIR variables accordingly (will need to move it to
 envProducts.sh.in and have configure generate the .sh file).
Unfortunately, I still get the same crash for GEOM with the SIGFPE 
Arithmetic exception, forcing me to kill Salome. I plan to investigate
this problem as soon as the documentation is ready.

Thank you very much for your explanations on git-buildpackage and 
the Debian build process, they clarified many points. My main problem
in Salome packaging is that the building process is resource intensive
and thus takes lot of time. I sometimes also run out of disk space but
that is really part of the fun.

Best regards,

André




--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org



Bug#457075: Salomé packaging

2010-02-17 Thread Andre Espaze
Hi Adam,

Thank you very much for your fast reply. I am sorry for not being as
responsive, I am new to Debian packaging and I am also discovering git.

  I have succeeded to build most of the Salomé modules with the 
  version 5.1.3-3 that you uploaded at http://lyre.mit.edu/~powell/salome/ 
  however I wanted to discuss the following problems:
  
  - the configure step in 'debian/rules' needs to add VTKSUFFIX=-5.4
  else vtk is not found and many components do not build.
 
 Indeed, I built -3 before VTK 5.4 was in unstable.  I am using
 --with-vtk-version=5.4 which seems to do the same thing.
Yes but I have a slight preference for VTKSUFFIX because it avoids such
warning in the configure step::

WARNING: unrecognized options: --with-vtk-version

when the module does not deal with VTK. Anyway I would like to discuss 
the configure step in the following ticket:
http://www.python-science.org/ticket/1405 
 
  - it lacks the omniorb4-nameserver package in the dependency list 
  else the KERNEL component does not find the omniNames command.
 
 Okay, the salome binary package needs to depend on this, right?  I don't
 think it needs to be in Build-Depends.
Yes you are right and I made a mistake. The omniorb4-nameserver is
already in debian/control, I did not know the difference between
Build-Depends and Depends.
 
  - as you said, the med 2.3.5 library needs to be built manually 
  with hdf5-1.8.4 but the main problem is that tests do not pass 
  in that case.
 
 There are patches to hdf5 (bug 510057) and med (bug 566828, fix is in
 the git repository) to build these two using the default MPI
 implementation, e.g. OpenMPI on most arches, LAM on others (soon MPICH2,
 which will require further changes to the current HDF5 package...).  The
 HDF5 team is a bit slow to adopt patches, but hopefully plans for a
 March freeze will get this done, so MED-MPI and Salomé can get in.
Med is running fine with the build instructions that you provided me
off list.  Thanks for the informations.
 
  - it seems to lack the 'config.h' file in the libopencascade-* 
  packages. Else do you know where that file could be? I fear that 
  some components (like GEOM) really need it.
 
 Denis replied to this.  I didn't notice any problems building GEOM, are
 there run-time issues which could result from missing this file?
 
  - the GEOM module crashes when trying to add a geometrical object
 
 I see.  Could this be related to the OCC config.h issue?  I don't see
 how...
In fact I do not say that the problem is related but I just wanted to
check the preprocessor definitions in that file and maybe find some
clues. I was afraid that upstream use the '-config config.h' gcc option
when building Salome, thus potentially introducing custom definitions. 

When I compiled Salomé for my first time on Debian Lenny, I got a
runtime crash of GEOM because of the NO_CXX_EXCEPTION definition used 
by OpenCascade. I got it in my build process because I had 
not set my OpenCascade version correctly (see 
KERNEL_SRC_5.1.3/salome_adm/unix/config_files/check_cas.m4 for the 
complete story).
 
 I'm impressed that it actually runs -- hadn't tried to run it yet!
Yes, it runs, with very few modules (only KERNEL and GUI from now) 
but that is already a nice start.
 
  How to you plan to collaborate on the package building? I would suggest
  to use the project http://www.python-science.org/project/salome-packaging
  because I can be efficiently organized on such a platform. Would you
  like to add a git or mercurial repository on which we will share the
  package source code?
 
 It is already on the Debian Science git repository at
 http://git.debian.org/git/debian-science/packages/salome.git/ .
Thank you, I built Salomé again from that repo. My tickets are 
there:
http://www.python-science.org/project/salome-packaging/0.1
and we can discuss the specific details off list.

Cheers,

André




--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20100217103708.ga28...@crater.logilab.fr



Bug#457075: Salomé packaging

2010-02-17 Thread Andre Espaze
 I think this is getting into the technical details, so it is probably
 not so interesting to the debian-science list.  I'm afraid I can't
 figure out a way to set up an account on ww.python-science.org; if you
 can let me know how then I'll go ahead and use that.
A message with your first and last names needs to be send to:   
  
nicolas.chau...@logilab.fr
However Nicolas just told me that Sylvestre would prefer to use the
Debian tracking system. Do you know where should I move the work from
http://www.python-science.org/project/salome-packaging?
 
 In the meantime, I'd like to let you know how to build the versions of
 dependencies I'm using.
 
 I don't know why the med-fichier tests are failing with HDF5 1.8.4.  To
 build my patched hdf5 package for Debian, you can do the following (in a
 Debian unstable chroot):
 
 apt-get source hdf5
 rm -rf hdf5-1.8.4/debian
 svn co svn://svn.debian.org/svn/pkg-grass/packages/hdf5
 cp -a hdf5/trunk/debian hdf5-1.8.4/
 wget 
 'http://bugs.debian.org/cgi-bin/bugreport.cgi?msg=27;filename=hdf5-default-mpi.patch;att=1;bug=510057'
  -O hdf5-default-mpi.patch
 cd hdf5-1.8.4/
 patch -p0  ../hdf5-default-mpi.patch
 dpkg-buildpackage
 
 Install the resulting .deb packages, particularly libhdf5-mpi-dev which
 should depend on libhdf5-openmpi-dev.  Then you can build the latest
 med-fichier using:
 
 git clone 
 http://git.debian.org/git/debian-science/packages/med-fichier.git -b master
 cd med-fichier
 git-buildpackage
 
 It should all build correctly.  At this point, does this version of
 med-fichier pass or fail the tests?
All the tests pass, that is really great. I would like to add such
documentation do the salome.git repo, inside the debian directory. I
have added the following ticket:
http://www.python-science.org/ticket/1403
that will certainly move.
 
 You can get and build my latest salome package by the same git clone
 command but substitute salome for med-fichier.  It still needs a lot of
 tweaking before it is ready to upload into Debian unstable.  And first
 the patched HDF5 package needs to go in, along with the new med-fichier.
I have succeeded to build salome at revision
181964c525693f410d01646a616e5d94f05c7c9d but I got only KERNEL and GUI
running out of the box at the end. I plan to investigate on the GEOM
runtime problem first, is it allright for you?

Then I have some questions regarding the packaging workflow. My main
problem is that running::

git-buildpackage --git-ignore-new

cleans everything and start from scratch. By the way I had to add 
the '--git-ignore-new' option but did not understand why. I finally use:

./debian/rules build

for building everything after small changes. And:

./debian/rules install

for then testing the updated version in debian/tmp. The step that I 
did not find is how to apply the series of patch once I pull from 
http://git.debian.org/git/debian-science/packages/salome.git 
Reading:
http://www.debian.org/doc/maint-guide/ch-build.en.html#s-completebuild
I did not find the tool. I first thought about the dpatch candidate but
the command is not installed on my system so I wonder how git-buildpackage
works.


André



--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org
Archive: http://lists.debian.org/20100217105932.gb28...@crater.logilab.fr



Bug#457075: Salomé packaging

2010-02-11 Thread Andre Espaze

Hi Adam,

I am André Espaze, the Logilab's employee supposed to help you in the
Salomé packaging for Debian. First I wanted to thank you for the great
work that you did on the current package. Then I would like to let you
know my progress on the testing part.

I have succeeded to build most of the Salomé modules with the 
version 5.1.3-3 that you uploaded at http://lyre.mit.edu/~powell/salome/ 
however I wanted to discuss the following problems:

- the configure step in 'debian/rules' needs to add VTKSUFFIX=-5.4
else vtk is not found and many components do not build.
- it lacks the omniorb4-nameserver package in the dependency list 
else the KERNEL component does not find the omniNames command.
- as you said, the med 2.3.5 library needs to be built manually 
with hdf5-1.8.4 but the main problem is that tests do not pass 
in that case.
- it seems to lack the 'config.h' file in the libopencascade-* 
packages. Else do you know where that file could be? I fear that 
some components (like GEOM) really need it.
- the GEOM module crashes when trying to add a geometrical object

You can find all the steps that I did, more details and also more problems 
at: http://www.python-science.org/ticket/1383

How to you plan to collaborate on the package building? I would suggest
to use the project http://www.python-science.org/project/salome-packaging
because I can be efficiently organized on such a platform. Would you
like to add a git or mercurial repository on which we will share the
package source code?

I am looking forward to work with you,

André

On Tue, Jan 26, 2010 at 10:22:12AM -0500, Adam C Powell IV wrote:
 Sorry, forgot to mention a couple of things yesterday.  First, the
 package doesn't build in current unstable, because HDF5 transitioned and
 MED didn't transition with it.  I may be able to help with MED to
 resolve this, but not until next week.  (It builds fine in my unstable
 chroot updated a few days ago, but that machine doesn't have enough disk
 space to build the whole thing.)
 
 On Mon, 2010-01-25 at 11:45 -0500, Adam C Powell IV wrote:
  Now for one problem.  The VISU module doesn't completely compile,
  because of a symbol/prototype incompatibility within its CONVERTER
  library.  I don't know quite enough C++ to fix this, can someone help?
 
 Second, the log with this build failure is in
 http://lyre.mit.edu/~powell/salome/salome_5.1.3-3_amd64.build - search
 for *** .  The relevant files are
 VISU_SRC_5.1.3/src/CONVERTOR/VISU_MergeFilterUtilities.cxx and .hxx.  I
 don't understand why TGetFieldData in the prototype with the vtkDataSet*
 argument works for both TGetPointData and TGetCellData but the one with
 the VISU::TFieldList* argument doesn't...
 
 -Adam
 -- 
 GPG fingerprint: D54D 1AEE B11C CE9B A02B  C5DD 526F 01E8 564E E4B6
 
 Engineering consulting with open source tools
 http://www.opennovation.com/





--
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org