[petsc-users] Some questions about the directory structure
Satish Balay
balay at mcs.anl.gov
Mon Aug 21 12:54:07 CDT 2023
On Mon, 21 Aug 2023, meator wrote:
> Hi. I'm trying to package PETSc using the tarball with documentation
> (https://ftp.mcs.anl.gov/pub/petsc/release-snapshots/petsc-with-docs-3.19.4.tar.gz)
> and I've got some questions about the structure of PETSc.
>
> What are the contents of the /usr/lib/petsc directory in destdir for? This
> directory has two subrirectories: bin and conf. Why is the bin/ directory in
> lib/? lib/ should be for libraries.
balay at p1 /home/balay
$ find /usr/lib -name bin
/usr/lib/debug/bin
/usr/lib/debug/usr/bin
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.372.b07-6.fc38.x86_64/jre/bin
/usr/lib/jvm/java-17-openjdk-17.0.8.0.7-1.fc38.x86_64/bin
/usr/lib/jvm/java-11-openjdk-11.0.20.0.8-1.fc38.x86_64/bin
balay at p1 /home/balay
$ find /usr/lib64 -name bin
/usr/lib64/qt5/bin
/usr/lib64/R/bin
> Are the executables contained in
> /usr/lib/petsc/bin essential to the user or the developer (should this be in a
> -devel subpackage)?
Hm - different scripts/utils have different propose. I guess most are useful from devel sub package.
> Some of the scripts don't have the executable bit
> (/usr/lib/petsc/bin/configureTAS.py, /usr/lib/petsc/bin/extract.py,
> /usr/lib/petsc/bin/petsc_tas_style.mplstyle, /usr/lib/petsc/bin/tasClasses.py,
> /usr/lib/petsc/bin/xml2flamegraph.py). What is their purpose?
I guess some of them can use some cleanup. extract.py likely belongs to bin/maint [and excluded from tarball..]
>
> The /usr/lib/petsc/conf directory seems to be related to the build process. Is
> that correct?
These have makefiles that can be included from user/application makefiles - to get compile/link working seamlessly.
> If yes, I will delete the directory from the package because
> packages shouldn't include these things. This directory even includes
> uninstall.py which is undesirable for a packaged program because this is the
> package manager's job.
Sure - some files might not make sense to be included in a packaging system.
>
> /usr/share/petsc looks like it contains additional info useful to the
> developers, therefore it should be in a -devel subpackage.
>
> I see that the docs directory contains .buildinfo. Does this directory contain
> additional build artifacts (that should be removed)?
I guess some of these files should be excluded from tarball.
>
> The main index.html of the documentation (from the tarball linked at the
> beginning of this e-mail) is invalid. It has all the menus but the main part
> of the page is blank. The raw HTML is cut off, there's no content and there
> are unclosed tags.
Hm - since the docs are primarily tested/used at petsc.org - some of that functionality probably doesn't work as raw html - and might need fixes.
Satish
>
> Many of my questions may be trivial but I want to make sure to not break the
> package.
>
> Thanks in advance
>
>
More information about the petsc-users
mailing list