all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: Paul Garlick <pgarlick@tourbillion-technology.com>
To: "Ludovic Courtès" <ludo@gnu.org>, "Dave Love" <fx@gnu.org>
Cc: 28593@debbugs.gnu.org
Subject: [bug#28593] [PATCH] gnu: openfoam: Clean up to reduce closure.
Date: Tue, 26 Sep 2017 12:40:36 +0100	[thread overview]
Message-ID: <1506426036.2423.32.camel@tourbillion-technology.com> (raw)
In-Reply-To: <87fubbj5yr.fsf@gnu.org>

Hi Dave and Ludo,

Thank you Dave for your helpful suggestions on the OpenFOAM package
definition.

Firstly, on the question of adding a debug output, I have checked the
effect of the current '#:strip-directories' keyword definition.  In the
build log:

stripping binaries in "/gnu/store/4zqn4w0wlq0irdwh3dhrdbsr7i3f1dag-
openfoam-4.1/lib/OpenFOAM-4.1/platforms/linux64GccDPInt32Opt/bin" with
"strip" and flags ("--strip-debug" "--enable-deterministic-archives")
stripping binaries in "/gnu/store/4zqn4w0wlq0irdwh3dhrdbsr7i3f1dag-
openfoam-4.1/lib/OpenFOAM-4.1/platforms/linux64GccDPInt32Opt/lib" with
"strip" and flags ("--strip-debug" "--enable-deterministic-archives")

This suggests that the binaries in .../bin and .../lib are being
stripped.  However, if I check a randomly-selected executable in the
bin directory:

$ objdump --syms /home/paul/.guix-profile/lib/OpenFOAM-
4.1/platforms/linux64GccDPInt32Opt/bin/blockMesh | grep debug

0000000000000000       O *UND*	0000000000000000              _ZN
4Foam8fileName5debugE
0000000000000000       O *UND*	0000000000000000              _ZN
4Foam4word5debugE

The 'file' command also reports that the executables and shared objects
are 'not stripped'.  Does adding a debug output achieve the effect of
stripping the binaries? 

> 
> Normally the ‘strip’ phase would strip things.  I guess the problem
> here
> is that libraries are not in lib/, so nothing gets stripped.  This
> would
> be worked around by simply passing something like:
> 
>   #:strip-directories '("OpenFOAM-1.2.3/lib")

Would that not give a 'directory not found' message?  Currently,

#:strip-directories (list (string-append
                                  "lib/OpenFOAM-" ,version
                                  "/platforms/linux64GccDPInt32Opt/bin"
)
                                 (string-append
                                  "lib/OpenFOAM-" ,version
                                  "/platforms/linux64GccDPInt32Opt/lib"
))

> > 
> > +                  (add-after 'build 'cleanup
> > +                    ;; Avoid lots of junk installed
> > +                    (lambda _
> > +                      (delete-file-recursively
> > +                       "platforms/linux64GccDPInt32Opt/src")
> > +                      (delete-file-recursively
> > +                       "platforms/linux64GccDPInt32OptSYSTEMOPENMP
> > I/src")
> > +                      (zero?
> > +                       (system* "find" "-name" "*.o" "-delete"))))
> Rather:
> 
>   (for-each delete-file (find-files "." "\\.o$"))
> 
> Paul can you confirm that this is OK?
> 

Maybe.  We need to be careful that we not delete files which are needed
later on.  Typically, a user will copy part of the directory structure
to a subdirectory of $HOME and compile a new solver.  The OpenFOAM
'wmake' utility takes care of the dependencies and re-compiles object
files as needed.  

So, object files under 'platforms/linux64GccDPInt32Opt/src' should be
safe to delete.  However, this needs to be checked to make sure no
dependencies are deleted that cannot easily be re-compiled.  Have you
already checked this Dave by, for example, re-compiling a standard
solver?

Paul.

  reply	other threads:[~2017-09-26 11:41 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-25 10:44 [bug#28593] [PATCH] gnu: openfoam: Clean up to reduce closure Dave Love
2017-09-25 12:52 ` Ludovic Courtès
2017-09-26 11:40   ` Paul Garlick [this message]
2017-09-26 12:08     ` Ludovic Courtès
2017-09-27 21:30       ` Dave Love
2017-09-28  8:36         ` Ludovic Courtès
2017-10-02 20:41           ` Dave Love
2017-10-03 12:33             ` Ludovic Courtès
2017-10-07 20:45       ` Ludovic Courtès
2017-10-09 11:06         ` Paul Garlick
2017-10-19 11:06           ` Dave Love
2017-10-19 12:15             ` Ludovic Courtès
2017-10-20 10:32               ` Paul Garlick
2017-10-20 11:28                 ` Ludovic Courtès
2017-10-20 15:28                   ` Dave Love
2017-10-20 15:26                 ` Dave Love
2017-10-22 16:15           ` Dave Love
2017-10-23 15:00             ` Paul Garlick
2017-12-01 10:27             ` bug#28593: " Ludovic Courtès
2017-09-27 21:25     ` [bug#28593] " Dave Love

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1506426036.2423.32.camel@tourbillion-technology.com \
    --to=pgarlick@tourbillion-technology.com \
    --cc=28593@debbugs.gnu.org \
    --cc=fx@gnu.org \
    --cc=ludo@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.