Re: Build iraf RPM on fedora

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Joseph, Sergio,

I am working on a Debian package for IRAF, so I am following the
discussion here closely. I intend to base the Debian package on your
work. There are, however, still some issues to be solved. As for other
astronomy packages, it would probably be good to coordinate us here a
bit, so that the packages match closely, that the Linux fragmentation
does not make it too hard to switch between Debian and Fedora.

Here are my thoughts for the Debian package. Feel free to ignore them
or to discuss them here ;-) :

Splitting into smaller packages
===============================

Arch-dependent and arch-independent package
-------------------------------------------

Most of the files are arch independent; it does not make sense to
duplicate them for every architecture. This is important for Debian
which has a dozens of official and inofficial ports, but may be an issue
for (potential) fedora ports as well. Extending to other architectures
seems mainly a problem of the zsvjmp.s file, which already exists for
i386, x64_64, and ppc (and others). Since this code is quite small, it
is probably not too difficult to port it to the oder Fedora and Debian
architectures; I could ask port maintainers to help writing the code
once it works for the main architectures.

Documentation would be another sub-package (which would be an optional
installation), as well as maybe a -dev or -src package (which contains
the files needed to rebuild/update the IRAF package, if this is needed
at all -- I have doubts here).

Split-off of large subpackages
------------------------------

I would split off the VO and NOAO packages. I am not sure whether
everyone needs these packages, so they could be made optional. Both
could be also split into arch-dependent, arch-independent and
documentation packages. Maybe other sub-packages are useful as well.

Directory tree
==============

According to the FHS, the architecture independent files should go into
/usr/share/iraf/ (is this %_{datadir}/iraf?), which then are linked into
/usr/lib/iraf/ (in Debian better /usr/lib/x86_64-linux-gnu/iraf/ to
allow multiarch). So, the IRAF base dir could look like

$ ls -l $iraf

drwxrwxr-x  2 oles   4096 Okt 18  2012 bin
drwxrwxr-x  2 oles   4096 Okt 18  2012 dev -> /usr/share/iraf/dev
drwxrwxr-x  4 oles   4096 Okt 18  2012 doc -> /usr/share/doc/iraf
drwxrwxr-x  2 oles   4096 Okt 18  2012 extern -> /usr/share/iraf/extern
-rw-rw-r--  1 oles      0 Okt 18  2012 HS.PCIX.GEN
drwxrwxr-x  2 oles   4096 Okt 18  2012 include -> /usr/include/iraf
-rw-rw-r--  1 oles      0 Okt 18  2012 IRAF.NET
-rw-rw-r--  1 oles      0 Okt 18  2012 IS.PORT.GEN
drwxrwxr-x  6 oles   4096 Okt 18  2012 lib -> /usr/share/iraf/lib
[...]
drwxrwxr-x  4 oles   4096 Okt 18  2012 unix/
drwxrwxr-x  2 oles   4096 Mai 13 11:47 util -> /usr/share/iraf/util
drwxrwxr-x 13 oles   4096 Okt 18  2012 vo/

I removed the bin.* here completely; the binaries are stored directly in
/usr/lib/iraf/bin/ (resp. /usr/lib/x86_64-linux-gnu/iraf/bin/ for
multiarch). The IRAF subdirectories (unix, vo, noao) I would handle in a
similar manner.

Patches
=======

I would propose not to use one huge patch, but to split it up into
smaller patches, by subject. As far as I analyzed your patch, it could
be split up into:

fix_fncache.patch
fortran.patch
irafuser_csh.patch
libc.patch
link_executables.patch
mksys.patch
shared_readline.patch
unop_int.patch
voclient.patch
vodata.patch
xc.patch

Copyright
=========

To your (Sergio) issue, I have a small comment:

Sergio Pascual <sergiopr@xxxxxxxxxxxxxxxxx> writes:
>   * The software in iraf is under different licenses. fedora-review checks the
> files in the source tree and tries to group them under license. The present
> licenses are: BSD (3 clauses), BSD (4 clauses), GPL v1 or later, GPl v2 or
> later, CDDL, MIT/X11. I'm not a lawyer, but CDDL and BSD (4 clauses) are not
> GPL compatible, so the combined work cannot fulfill the requirements of every
> license.

As far as I analyzed the licenses, CDDL is used for unix/boot/xyacc/*
and unix/hlib/stdarg-solaris.h. BSD-4 is used only in
unix/hlib/libc/stdarg-freebsd.h. The stdarg-*.h files are not used for
Linux, so they are not part of a combined work in Debian or Fedora.

xyacc is used to build the system. The output of xyacc is not
necessarily licensed by CDDL. xyacc is also not linked to GPL
code. Perhaps it may be omitted completely from the binary distribution?
It could also go into a separate (CDDL-licensed) package, if there is a
use for it.

Best regards

Ole
_______________________________________________
Fedora astronomy mailing list
astronomy@xxxxxxxxxxxxxxxxxxxxxxx
http://fedoraproject.org/wiki/SIGs/Astronomy
https://admin.fedoraproject.org/mailman/listinfo/astronomy





[Index of Archives]     [Fedora Users]     [Fedora Scitech]     [ARM Kernel]     [Fedora Advisory Board]     [Fedora Security]     [Fedora Maintainers]     [Fedora Devel Java]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Mentors]     [Fedora Package Announce]     [Fedora Package Review]     [Fedora Music]     [Fedora Packaging]     [Centos]     [Fedora SELinux]     [Fedora Triage]     [Coolkey]     [Yum Users]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Art]     [Fedora Docs]     [NASA]

  Powered by Linux