[Debian-astro-commits] [iraf] 01/04: Install files according to FHS
Ole Streicher
olebole at moszumanska.debian.org
Sun Nov 26 13:58:30 UTC 2017
This is an automated email from the git hooks/post-receive script.
olebole pushed a commit to branch master
in repository iraf.
commit 547b906e588a230d24d2e8ef3c7b9894f1a24b71
Author: Ole Streicher <olebole at debian.org>
Date: Thu Nov 23 20:46:41 2017 +0100
Install files according to FHS
---
debian/changelog | 6 +-
debian/control | 9 +-
debian/iraf-common.dirs | 1 +
debian/iraf-common.install | 16 +-
debian/iraf-common.links | 3 -
debian/iraf-dev.install | 10 +-
debian/iraf-dev.links | 14 +-
debian/{iraf.manpages => iraf-dev.manpages} | 0
debian/iraf-noao.install | 2 +-
debian/iraf.install | 3 +-
debian/iraf.links | 2 +-
debian/irafcl | 64 ++++++
.../patches/Adjust-version-number-and-motd.patch | 34 +++
...h.patch => Allow-plus-sign-in-build-path.patch} | 2 +-
debian/patches/Don-t-call-back-home-on-start.patch | 21 ++
...installation-FHS-and-Free-Desktop-conform.patch | 155 -------------
.../Make-the-installation-FHS-conform.patch | 253 +++++++++++++++++++++
debian/patches/series | 6 +-
debian/rules | 10 +-
19 files changed, 424 insertions(+), 187 deletions(-)
diff --git a/debian/changelog b/debian/changelog
index 87d637c..b759c20 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,6 @@
-iraf (2.16.1+2017.11.22-0) UNRELEASED; urgency=low
+iraf (2.16.1+2017.11.22-1~1.gbp84085f) UNRELEASED; urgency=low
+
+ ** SNAPSHOT build @84085feb44408d7be12bee49eb06c765ecae8b81 **
* New upstream release
* Complete packaging restart from scratch. Closes: #690531
@@ -9,7 +11,7 @@ iraf (2.16.1+2017.11.22-0) UNRELEASED; urgency=low
* Remove dangling symlinks. Closes: #138086
* Fix startup. Closes: #168867
- -- Ole Streicher <debian at liska.ath.cx> Sun, 14 Oct 2012 16:23:09 +0200
+ -- Ole Streicher <olebole at debian.org> Sat, 25 Nov 2017 18:03:53 +0100
iraf (2.11.3-2) unstable; urgency=high
diff --git a/debian/control b/debian/control
index 8c1ad24..9a1160d 100644
--- a/debian/control
+++ b/debian/control
@@ -9,8 +9,8 @@ Build-Depends: debhelper (>= 9),
libreadline-dev
Section: science
Priority: optional
-Maintainer: Debian Science Maintainers <debian-science-maintainers at lists.alioth.debian.org>
-Uploaders: Ole Streicher <debian at liska.ath.cx>
+Maintainer: Debian Astro Team <debian-astro-maintainers at lists.alioth.debian.org>
+Uploaders: Ole Streicher <olebole at debian.org>
Standards-Version: 4.1.1
Homepage: http://www.iraf.net
Vcs-Browser: https://anonscm.debian.org/cgit/debian-astro/packages/iraf.git
@@ -20,6 +20,7 @@ Package: iraf
Architecture: any
Depends: iraf-common, ${misc:Depends}, ${shlibs:Depends}
Recommends: iraf-noao
+Suggests: iraf-dev
Multi-Arch: foreign
Description: Image Reduction and Analysis Facility
IRAF is the "Image Reduction and Analysis Facility". The main
@@ -41,7 +42,6 @@ Description: Image Reduction and Analysis Facility
Package: iraf-common
Architecture: all
-Multi-Arch: foreign
Depends: ${misc:Depends}
Recommends: iraf
Description: Image Reduction and Analysis Facility (common files)
@@ -55,7 +55,7 @@ Description: Image Reduction and Analysis Facility (common files)
Package: iraf-dev
Architecture: any
-Multi-Arch: foreign
+Multi-Arch: no
Depends: iraf, ${misc:Depends}, ${shlibs:Depends}
Description: Image Reduction and Analysis Facility (development files)
IRAF is the "Image Reduction and Analysis Facility". The main
@@ -81,7 +81,6 @@ Description: IRAF NOAO data reduction package
Package: iraf-noao-common
Architecture: all
-Multi-Arch: foreign
Depends: ${misc:Depends}
Recommends: iraf-noao
Description: IRAF NOAO data reduction package (common files)
diff --git a/debian/iraf-common.dirs b/debian/iraf-common.dirs
new file mode 100644
index 0000000..6dae7ba
--- /dev/null
+++ b/debian/iraf-common.dirs
@@ -0,0 +1 @@
+usr/share/iraf/extern
diff --git a/debian/iraf-common.install b/debian/iraf-common.install
index 5ce3b33..8d69d5d 100644
--- a/debian/iraf-common.install
+++ b/debian/iraf-common.install
@@ -1,7 +1,21 @@
usr/share/iraf/dev
+usr/share/iraf/extern
usr/share/iraf/lib
usr/share/iraf/local
usr/share/iraf/math
-usr/share/iraf/pkg
+usr/share/iraf/pkg/bench
+usr/share/iraf/pkg/cl
+usr/share/iraf/pkg/dataio
+usr/share/iraf/pkg/dbms
+usr/share/iraf/pkg/ecl
+usr/share/iraf/pkg/images
+usr/share/iraf/pkg/language
+usr/share/iraf/pkg/lists
+usr/share/iraf/pkg/obsolete
+usr/share/iraf/pkg/plot
+usr/share/iraf/pkg/proto
+usr/share/iraf/pkg/system
+usr/share/iraf/pkg/utilities
+usr/share/iraf/pkg/xtools
usr/share/iraf/sys
usr/share/iraf/unix
diff --git a/debian/iraf-common.links b/debian/iraf-common.links
deleted file mode 100644
index aedc667..0000000
--- a/debian/iraf-common.links
+++ /dev/null
@@ -1,3 +0,0 @@
-usr/share/iraf/unix/hlib/cl.sh usr/bin/iraf-cl
-usr/share/iraf/unix/hlib/mkiraf.sh usr/bin/mkiraf
-usr/share/iraf/unix/hlib/mkmlist.sh usr/bin/mkmlist
diff --git a/debian/iraf-dev.install b/debian/iraf-dev.install
index c4dd373..8c14462 100644
--- a/debian/iraf-dev.install
+++ b/debian/iraf-dev.install
@@ -1,4 +1,8 @@
-unix/bin.*/*.e usr/lib/iraf/unix/bin
-unix/bin.*/lib*.a usr/lib/iraf/unix/bin
-bin.*/*.a usr/lib/iraf/bin/
+usr/share/iraf/pkg/softools
+unix/bin/*.e usr/lib/iraf/unix
+unix/bin/lib*.a usr/lib/iraf/unix
+bin/lib*.a usr/lib/iraf
+bin/libmain.o usr/lib/iraf
include usr/share/iraf
+unix/hlib/*.h usr/share/iraf/unix/hlib
+unix/hlib/libc/ usr/share/iraf/unix/hlib
diff --git a/debian/iraf-dev.links b/debian/iraf-dev.links
index 17c7bb9..7551737 100644
--- a/debian/iraf-dev.links
+++ b/debian/iraf-dev.links
@@ -1,6 +1,8 @@
-usr/lib/iraf/mkpkg.e /usr/bin/mkpkg
-usr/lib/iraf/xc.e /usr/bin/xc
-usr/lib/iraf/generic.e /usr/bin/iraf-generic
-usr/lib/iraf/xyacc.e /usr/bin/iraf-xyacc
-usr/lib/iraf/rpp.e /usr/bin/iraf-rpp
-usr/lib/iraf/xpp.e /usr/bin/iraf-xpp
+usr/lib/iraf/unix/mkpkg.e usr/lib/iraf/bin/mkpkg
+usr/lib/iraf/unix/xc.e usr/lib/iraf/bin/xc
+usr/lib/iraf/unix/generic.e usr/lib/iraf/bin/generic
+usr/lib/iraf/unix/xyacc.e usr/lib/iraf/bin/xyacc
+usr/lib/iraf/unix/rpp.e usr/lib/iraf/bin/rpp
+usr/lib/iraf/unix/xpp.e usr/lib/iraf/bin/xpp
+usr/share/iraf/unix/hlib/libc/iraf.h /usr/include/iraf.h
+
diff --git a/debian/iraf.manpages b/debian/iraf-dev.manpages
similarity index 100%
rename from debian/iraf.manpages
rename to debian/iraf-dev.manpages
diff --git a/debian/iraf-noao.install b/debian/iraf-noao.install
index a246004..13be512 100644
--- a/debian/iraf-noao.install
+++ b/debian/iraf-noao.install
@@ -1 +1 @@
-noao/bin.*/*.e usr/lib/iraf/noao
+noao/bin/*.e usr/lib/iraf/noao
diff --git a/debian/iraf.install b/debian/iraf.install
index 3dce196..4b44389 100644
--- a/debian/iraf.install
+++ b/debian/iraf.install
@@ -1 +1,2 @@
-bin.*/*.e usr/lib/iraf/bin/
+bin/*.e usr/lib/iraf
+debian/irafcl usr/bin
diff --git a/debian/iraf.links b/debian/iraf.links
index 454ef53..6be0e6e 100644
--- a/debian/iraf.links
+++ b/debian/iraf.links
@@ -1 +1 @@
-/usr/share/iraf/unix/hlib/cl.sh /usr/bin/irafcl
+usr/lib/iraf/sgidispatch.e usr/bin/sgidispatch
diff --git a/debian/irafcl b/debian/irafcl
new file mode 100755
index 0000000..12b9b58
--- /dev/null
+++ b/debian/irafcl
@@ -0,0 +1,64 @@
+#!/bin/sh
+#
+# irafcl.sh -- Startup the version of the CL executable compiled for the
+# architecture.
+
+cl_binary="ecl.e"
+
+# Determine IRAF root directory
+d_iraf="/usr/share/iraf/"
+if [ -n "$iraf" ]; then
+ if [ ! -e "$iraf" ]; then
+ echo "Warning: iraf=$iraf does not exist \(check .cshrc or .login\)"
+ echo "Session will default to iraf=$d_iraf"
+ unset iraf ; sleep 3
+ fi
+fi
+if [ -z "$iraf" ]; then
+ export iraf="$d_iraf"
+fi
+
+if [ -z $host ]; then
+ export host="${iraf}unix/"
+fi
+
+# Check for a version query.
+if [ $# -gt 1 ]; then
+ case "$1" in
+ "-v" | "-V" | "-version" | "--version")
+ head -1 $iraf/unix/hlib/motd
+ exit 0
+ ;;
+ *)
+ ;;
+ esac
+fi
+
+# Determine the temporary dir, using standard variable from The Open Group
+# Base Specifications. Default to FHS.
+if [ -z $tmp ]; then
+ if [ -n "$TMPDIR" ]; then
+ export tmp=$(echo "$TMPDIR" | sed s';/$;;')/
+ else
+ export tmp="/tmp/"
+ fi
+fi
+
+# Initialize the IRAF user dirs
+if [ ! -e "${HOME}/.iraf" ] ; then
+ mkdir -p "${HOME}/.iraf" \
+ "${HOME}/.iraf/imdir" \
+ "${HOME}/.iraf/cache" \
+ "${HOME}/.iraf/uparm"
+fi
+
+if [ -e "${iraf}bin${arch}${cl_binary}" ] ; then
+ IRAFBIN="${iraf}bin${arch}/"
+else
+ IRAFBIN="/usr/lib/iraf/"
+fi
+
+# Prepend IRAF bin dir to PATH to allow the use of devel commands
+PATH=/usr/lib/iraf/bin:${PATH}
+
+exec "${IRAFBIN}$cl_binary"
diff --git a/debian/patches/Adjust-version-number-and-motd.patch b/debian/patches/Adjust-version-number-and-motd.patch
new file mode 100644
index 0000000..40419ad
--- /dev/null
+++ b/debian/patches/Adjust-version-number-and-motd.patch
@@ -0,0 +1,34 @@
+From: Ole Streicher <olebole at debian.org>
+Date: Thu, 23 Nov 2017 23:31:11 +0100
+Subject: Adjust version number and motd
+
+---
+ unix/hlib/motd | 4 +---
+ unix/hlib/zzsetenv.def | 2 +-
+ 2 files changed, 2 insertions(+), 4 deletions(-)
+
+diff --git a/unix/hlib/motd b/unix/hlib/motd
+index 77d4f03..71fcdcc 100644
+--- a/unix/hlib/motd
++++ b/unix/hlib/motd
+@@ -1,6 +1,4 @@
+-
+- NOAO/IRAF PC-IRAF Revision 2.16.1 EXPORT Mon Oct 14 21:40:13 MST 2013
+- This is the EXPORT version of IRAF V2.16 supporting PC systems.
++ Debian/IRAF PC-IRAF Revision 2.16.1+
+
+
+ Welcome to IRAF. To list the available commands, type ? or ??. To get
+diff --git a/unix/hlib/zzsetenv.def b/unix/hlib/zzsetenv.def
+index 881d9c7..6527a32 100644
+--- a/unix/hlib/zzsetenv.def
++++ b/unix/hlib/zzsetenv.def
+@@ -54,7 +54,7 @@ set terminal = xgterm
+ set ttybaud = 9600
+ set ttyncols = 80
+ set ttynlines = 40
+-set version = "NOAO/IRAF V2.16.1"
++set version = "Debian IRAF V2.16.1+"
+
+ # System directories.
+
diff --git a/debian/patches/Allow-in-build-path.patch b/debian/patches/Allow-plus-sign-in-build-path.patch
similarity index 95%
rename from debian/patches/Allow-in-build-path.patch
rename to debian/patches/Allow-plus-sign-in-build-path.patch
index 553a15f..27f793b 100644
--- a/debian/patches/Allow-in-build-path.patch
+++ b/debian/patches/Allow-plus-sign-in-build-path.patch
@@ -1,6 +1,6 @@
From: Ole Streicher <olebole at debian.org>
Date: Wed, 22 Nov 2017 14:45:10 +0100
-Subject: Allow '+' in build path
+Subject: Allow plus sign in build path
---
install | 6 +++---
diff --git a/debian/patches/Don-t-call-back-home-on-start.patch b/debian/patches/Don-t-call-back-home-on-start.patch
new file mode 100644
index 0000000..24d00a0
--- /dev/null
+++ b/debian/patches/Don-t-call-back-home-on-start.patch
@@ -0,0 +1,21 @@
+From: Ole Streicher <olebole at debian.org>
+Date: Sat, 25 Nov 2017 15:44:58 +0100
+Subject: Don't call back home on start
+
+---
+ unix/hlib/login.cl | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/unix/hlib/login.cl b/unix/hlib/login.cl
+index bd10cd2..d30a9d2 100644
+--- a/unix/hlib/login.cl
++++ b/unix/hlib/login.cl
+@@ -138,8 +138,6 @@ else {
+
+
+ #============================================================================
+-# Check for updates to the system
+-chkupdate
+
+ # Notify the user if we're using the global login.
+ path (".") | scan (s1)
diff --git a/debian/patches/Make-the-installation-FHS-and-Free-Desktop-conform.patch b/debian/patches/Make-the-installation-FHS-and-Free-Desktop-conform.patch
deleted file mode 100644
index bb41c94..0000000
--- a/debian/patches/Make-the-installation-FHS-and-Free-Desktop-conform.patch
+++ /dev/null
@@ -1,155 +0,0 @@
-From: Ole Streicher <olebole at debian.org>
-Date: Wed, 22 Nov 2017 13:32:15 +0100
-Subject: Make the installation FHS and Free Desktop conform
-
-This moves the IRAF installation from /iraf/iraf/ to /usr/share/iraf/, with
-the system dependent files (binaries) in /usr/lib/iraf. Since the binaries
-now cannot be found anymore under iraf$, we need to introduce a new variable
-iraf_b$, which points to /usr/lib/iraf/.
-
-Also, according to freedesktop.org, the user cache and data paths are moved
-to their home directories.
----
- unix/hlib/cl.sh | 30 +++++++++++++++++++++++-------
- unix/hlib/mkiraf.sh | 16 +++++++++++-----
- unix/hlib/zzsetenv.def | 4 ++--
- 3 files changed, 36 insertions(+), 14 deletions(-)
-
-diff --git a/unix/hlib/cl.sh b/unix/hlib/cl.sh
-index 945ec4d..4f3c13b 100755
---- a/unix/hlib/cl.sh
-+++ b/unix/hlib/cl.sh
-@@ -45,7 +45,7 @@ case "$nm" in
- esac
-
- # Determine IRAF root directory (value set in install script).
--d_iraf="/iraf/iraf/"
-+d_iraf="/usr/share/iraf/"
- if [ -n $iraf ]; then
- if [ ! -e $iraf ]; then
- echo "Warning: iraf=$iraf does not exist \(check .cshrc or .login\)"
-@@ -57,6 +57,22 @@ if [ -z $iraf ]; then
- export iraf="$d_iraf"
- fi
-
-+export iraf_b=/usr/lib/iraf/
-+
-+if [ -z $host ]; then
-+ export host="${iraf}unix/"
-+fi
-+
-+# Determine the temporary dir, using standard variable from The Open Group
-+# Base Specifications. Default to FHS.
-+if [ -z $tmp ]; then
-+ if [ -n "$TMPDIR" ]; then
-+ export tmp=$(echo $TMPDIR | sed s'-/$--')/
-+ else
-+ export tmp="/tmp/"
-+ fi
-+fi
-+
- # Check for a version query.
- if (( $# > 1 )); then
- case "$1" in
-@@ -78,10 +94,10 @@ else
- fi
-
- if [ -n "$IRAFARCH" ]; then
-- if [ -e $iraf/bin.${IRAFARCH}/${cl_binary} ]; then
-+ if [ -e $iraf_b/bin.${IRAFARCH}/${cl_binary} ]; then
- MACH=$IRAFARCH
- else
-- echo "ERROR: No $iraf/bin.${IRAFARCH}/${cl_binary} binary found."
-+ echo "ERROR: No $iraf_b/bin.${IRAFARCH}/${cl_binary} binary found."
- if [ "$ACTUAL_ARCH" != "$IRAFARCH" ]; then
- echo "ERROR: IRAFARCH set to '$IRAFARCH', should be '$ACTUAL_ARCH'"
- fi
-@@ -121,8 +137,8 @@ else
- export IRAFARCH="$MACH"
- fi
-
-- if [ ! -e $iraf/bin.${MACH}/${cl_binary} ]; then
-- echo "ERROR: No $iraf/bin.${IRAFARCH}/${cl_binary} binary found."
-+ if [ ! -e $iraf_b/bin.${MACH}/${cl_binary} ]; then
-+ echo "ERROR: No $iraf_b/bin.${IRAFARCH}/${cl_binary} binary found."
- exit 1
- fi
- fi
-@@ -136,7 +152,7 @@ if [ -n "$IRAFARCH" ]; then
- export arch=".$IRAFARCH"
- fi
-
-- export IRAFBIN=${iraf}bin$arch/
-+ export IRAFBIN=${iraf_b}bin$arch/
- file=${IRAFBIN}$cl_binary
- if [ -e $file ]; then
- exec $file
-@@ -149,7 +165,7 @@ fi
- # Set the architecture to be used.
- export IRAFARCH=$MACH
- export arch=.$IRAFARCH
--export IRAFBIN=${iraf}bin$arch/
-+export IRAFBIN=${iraf_b}bin$arch/
-
- # Run the desired CL.
- exec ${IRAFBIN}$cl_binary
-diff --git a/unix/hlib/mkiraf.sh b/unix/hlib/mkiraf.sh
-index e62072c..b710ba2 100755
---- a/unix/hlib/mkiraf.sh
-+++ b/unix/hlib/mkiraf.sh
-@@ -25,9 +25,9 @@ def=0
- defterm="xgterm"
-
- # Paths edited by the install script.
--iraf="/iraf/iraf/"
--imdir="/iraf/imdir/"
--cachedir="/iraf/cache/"
-+iraf="/usr/share/iraf/"
-+imdir="/var/lib/imdirs/"
-+cachedir="/var/cache/iraf/"
-
-
- # ------------- (end of site dependent definitions) ------------------------
-@@ -147,7 +147,10 @@ if [ "$myterm" == "none" ]; then
- fi
-
- # Initialize the 'imdir' and 'cachedir' paths.
--IDIR="${imdir}$USER"
-+if [ "$XDG_DATA_HOME" = 0 ]; then
-+ export XDG_DATA_HOME=${HOME}/.local/share
-+fi
-+IDIR=${XDG_DATA_HOME}/iraf/imdir/
- if [ -d $imdir ]; then
- mkdir -p $IDIR &> /dev/null
- fi
-@@ -155,7 +158,10 @@ if [ ! -d $IDIR -o ! -w $IDIR ]; then
- IDIR="HDR$"
- fi
-
--CDIR="${cachedir}$USER"
-+if [ "$XDG_CACHE_HOME" = 0 ]; then
-+ export XDG_CACHE_HOME=${HOME}/.cache
-+fi
-+CDIR=${XDG_CACHE_HOME}/iraf/
- if [ -d $cachedir ]; then
- mkdir -p $CDIR &> /dev/null
- fi
-diff --git a/unix/hlib/zzsetenv.def b/unix/hlib/zzsetenv.def
-index 881d9c7..8be2dde 100644
---- a/unix/hlib/zzsetenv.def
-+++ b/unix/hlib/zzsetenv.def
-@@ -54,12 +54,12 @@ set terminal = xgterm
- set ttybaud = 9600
- set ttyncols = 80
- set ttynlines = 40
--set version = "NOAO/IRAF V2.16.1"
-+set version = "Debian IRAF V2.16.1+"
-
- # System directories.
-
- set as = "host$as/"
--set bin = "iraf$bin(arch)/"
-+set bin = "iraf$bin(arch)/"
- set boot = "host$boot/"
- set dev = "iraf$dev/"
- set doc = "iraf$doc/"
diff --git a/debian/patches/Make-the-installation-FHS-conform.patch b/debian/patches/Make-the-installation-FHS-conform.patch
new file mode 100644
index 0000000..98942ec
--- /dev/null
+++ b/debian/patches/Make-the-installation-FHS-conform.patch
@@ -0,0 +1,253 @@
+From: Ole Streicher <olebole at debian.org>
+Date: Sat, 25 Nov 2017 15:45:49 +0100
+Subject: Make the installation FHS conform
+
+This moves the IRAF installation from /iraf/iraf/ to /usr/share/iraf/, with
+the system dependent files (binaries) in /usr/lib/iraf.
+---
+ noao/lib/zzsetenv.def | 4 ++--
+ pkg/cl/main.c | 14 +++++++++++++-
+ pkg/ecl/main.c | 14 +++++++++++++-
+ unix/hlib/clpackage.cl | 4 +++-
+ unix/hlib/extern.pkg | 29 +++++++++++++++++------------
+ unix/hlib/extpkg.cl | 2 +-
+ unix/hlib/login.cl | 32 ++++++++++++++++++--------------
+ unix/hlib/zzsetenv.def | 3 ++-
+ unix/os/irafpath.c | 10 ++++++++++
+ 9 files changed, 79 insertions(+), 33 deletions(-)
+
+diff --git a/noao/lib/zzsetenv.def b/noao/lib/zzsetenv.def
+index c38a4be..da6916a 100644
+--- a/noao/lib/zzsetenv.def
++++ b/noao/lib/zzsetenv.def
+@@ -1,7 +1,7 @@
+ # Global environment definitions for the NOAO packages.
+
+-set pkglibs = "noao$bin(arch)/,noao$lib/"
+-set noaobin = "noao$bin(arch)/"
++set noaobin = "/usr/lib/iraf/noao/"
++set pkglibs = "noaobin$,noao$lib/"
+ set noaolib = "noao$lib/"
+ set ccdtime = "noaolib$ccdtime/"
+ set onedstds = "noaolib$onedstds/"
+diff --git a/pkg/cl/main.c b/pkg/cl/main.c
+index 0471f4c..28e6266 100644
+--- a/pkg/cl/main.c
++++ b/pkg/cl/main.c
+@@ -491,7 +491,19 @@ login (char *cmd)
+ compile (REDIRIN);
+ compile (EXEC);
+ } else {
+- printf ("Warning: no login.cl found in login directory\n");
++ char *host = envget ("host");
++
++ memset (global, 0, SZ_LINE);
++ sprintf (global, "%shlib/login.cl", host);
++ if (c_access (global, 0, 0) == YES) {
++ o.o_val.v_s = global;
++ compile (CALL, "cl");
++ compile (PUSHCONST, &o);
++ compile (REDIRIN);
++ compile (EXEC);
++ } else {
++ printf ("Warning: no login.cl found in login directory\n");
++ }
+ }
+
+ } else {
+diff --git a/pkg/ecl/main.c b/pkg/ecl/main.c
+index ee1aeae..1a4b27f 100644
+--- a/pkg/ecl/main.c
++++ b/pkg/ecl/main.c
+@@ -540,7 +540,19 @@ login (char *cmd)
+ compile (REDIRIN);
+ compile (EXEC);
+ } else {
+- printf ("Warning: no login.cl found in login directory\n");
++ char *host = envget ("host");
++
++ memset (global, 0, SZ_LINE);
++ sprintf (global, "%shlib/login.cl", host);
++ if (c_access (global, 0, 0) == YES) {
++ o.o_val.v_s = global;
++ compile (CALL, "cl");
++ compile (PUSHCONST, &o);
++ compile (REDIRIN);
++ compile (EXEC);
++ } else {
++ printf ("Warning: no login.cl found in login directory\n");
++ }
+ }
+
+ } else {
+diff --git a/unix/hlib/clpackage.cl b/unix/hlib/clpackage.cl
+index cb017cd..e0feed6 100644
+--- a/unix/hlib/clpackage.cl
++++ b/unix/hlib/clpackage.cl
+@@ -46,7 +46,9 @@ if (access ("hlib$extpkg.cl") == yes)
+ images
+ proto
+ utilities
+-noao
++if (deftask ("noao"))
++ noao
++;
+
+ # Load the SYSTEM package. Avoid printing menu, but do not change the
+ # default value of the menus switch.
+diff --git a/unix/hlib/extern.pkg b/unix/hlib/extern.pkg
+index 5afbabf..d0935c2 100644
+--- a/unix/hlib/extern.pkg
++++ b/unix/hlib/extern.pkg
+@@ -4,12 +4,16 @@
+
+ reset extern = iraf$extern/
+
+-reset noao = iraf$noao/
+-task noao.pkg = noao$noao.cl
+-
+-reset vo = iraf$vo/
+-task vo.pkg = vo$vo.cl
+-
++if (access ("iraf$noao/noao.cl") == yes) {
++ reset noao = iraf$noao/
++ task noao.pkg = noao$noao.cl
++}
++;
++if (access ("iraf$vo/vo.cl") == yes) {
++ reset vo = iraf$vo/
++ task vo.pkg = vo$vo.cl
++}
++;
+ #reset local = iraf$local/
+ #task local.pkg = local$local.cl
+
+@@ -29,12 +33,13 @@ task vo.pkg = vo$vo.cl
+
+ # Initialize the helpdb string. We'll add to this when dyanamically
+ # loading packages when the next load the CLPACKAGE.
+-reset helpdb = "lib$helpdb.mip\
+- ,noao$lib/helpdb.mip\
+- ,vo$lib/helpdb.mip\
+-# ,example$lib/helpdb.mip\
+- "
+-
++reset helpdb = "lib$helpdb.mip"
++if (access("noao$lib/helpdb.mip") == yes)
++ reset helpdb = (envget("helpdb") // ",noao$lib/helpdb.mip")
++;
++if (access("vo$lib/helpdb.mip") == yes)
++ reset helpdb = (envget("helpdb") // ",vo$lib/helpdb.mip")
++;
+
+ # Do not modify below this line!
+ clpackage
+diff --git a/unix/hlib/extpkg.cl b/unix/hlib/extpkg.cl
+index 4e8b3a6..40b80e7 100644
+--- a/unix/hlib/extpkg.cl
++++ b/unix/hlib/extpkg.cl
+@@ -23,7 +23,7 @@ dpkg = mktemp ("tmp$dpkg")
+ if (access (dpkg) == yes)
+ printf ("!/bin/rm -f %s\n", osfn(dpkg)) | cl ()
+ ;
+-printf ("!/bin/ls -1ad [a-y]*\n") | cl (,> dpkg)
++printf ("!/bin/ls -1ad [a-y]* 2> /dev/null\n") | cl (,> dpkg)
+
+ list = dpkg
+ while (fscan (list, s1) != EOF) {
+diff --git a/unix/hlib/login.cl b/unix/hlib/login.cl
+index d30a9d2..4f0f4ed 100644
+--- a/unix/hlib/login.cl
++++ b/unix/hlib/login.cl
+@@ -4,19 +4,20 @@
+ if (defpar ("logver"))
+ logver = "IRAF V2.16.1 Oct 2013"
+
+-set home = "U_HOME"
+-set imdir = "U_IMDIR"
+-set cache = "U_CACHEDIR"
++set home = (envget("HOME") // "/.iraf/")
++set imdir = "home$imdir/"
++set cache = "home$cache/"
+ set uparm = "home$uparm/"
+-set userid = "U_USER"
++set userid = envget("USER")
+
+-# Set the terminal type. We assume the user has defined this correctly
+-# when issuing the MKIRAF and no longer key off the unix TERM to set a
+-# default.
++# Set the terminal type.
+ if (access (".hushiraf") == no)
+- print "setting terminal type to 'U_TERM' ..."
+-stty U_TERM
+-
++ print "setting terminal type to '" envget("TERM") "' ..."
++;
++if (envget("TERM") == "xgterm")
++ stty xgterm
++else
++ stty xterm
+
+ #============================================================================
+ # Uncomment and edit to change the defaults.
+@@ -123,9 +124,12 @@ if (deftask ("proto"))
+
+ tv # image display
+ utilities # miscellaneous utilities
+-noao # optical astronomy packages
+-vo # Virtual Observatory tools
+-
++if (deftask ("noao"))
++ noao # optical astronomy packages
++;
++if (deftask ("vo"))
++ vo # Virtual Observatory tools
++;
+ prcache directory
+ cache directory page type help
+
+@@ -142,7 +146,7 @@ else {
+ # Notify the user if we're using the global login.
+ path (".") | scan (s1)
+ if ( osfn("home$") != substr (s1, strldx("!",s1)+1, strlen(s1)) ) {
+- printf (" *** Using global login file: %slogin.cl\n", osfn("home$"))
++ printf (" *** Using global login file: %slogin.cl\n", osfn("hlib$"))
+ }
+ ;
+
+diff --git a/unix/hlib/zzsetenv.def b/unix/hlib/zzsetenv.def
+index 6527a32..877fabd 100644
+--- a/unix/hlib/zzsetenv.def
++++ b/unix/hlib/zzsetenv.def
+@@ -58,8 +58,9 @@ set version = "Debian IRAF V2.16.1+"
+
+ # System directories.
+
++set host = "iraf$unix/"
+ set as = "host$as/"
+-set bin = "iraf$bin(arch)/"
++set bin = "/usr/lib/iraf/"
+ set boot = "host$boot/"
+ set dev = "iraf$dev/"
+ set doc = "iraf$doc/"
+diff --git a/unix/os/irafpath.c b/unix/os/irafpath.c
+index 96e147a..5b4e149 100644
+--- a/unix/os/irafpath.c
++++ b/unix/os/irafpath.c
+@@ -94,6 +94,16 @@ char *fname; /* simple filename, no dirs */
+ if (access (pathname, 0) == 0)
+ return (pathname);
+
++ /* Try IRAFBIN */
++ strcpy (pathname, "/usr/lib/iraf/");
++ strcat (pathname, fname);
++ if (access (pathname, 0) == 0)
++ return (pathname);
++ strcpy (pathname, "/usr/lib/iraf/unix/");
++ strcat (pathname, fname);
++ if (access (pathname, 0) == 0)
++ return (pathname);
++
+ /* Try HLIB */
+ strcpy (pathname, (char *)hostdir);
+ strcat (pathname, "hlib/");
diff --git a/debian/patches/series b/debian/patches/series
index bb7b43c..6e12920 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,4 +1,6 @@
Use-system-libraries-when-possible.patch
-Make-the-installation-FHS-and-Free-Desktop-conform.patch
-Allow-in-build-path.patch
+Adjust-version-number-and-motd.patch
+Allow-plus-sign-in-build-path.patch
Fix-f77-script.patch
+Don-t-call-back-home-on-start.patch
+Make-the-installation-FHS-conform.patch
diff --git a/debian/rules b/debian/rules
index c4db6d7..a53fbc4 100755
--- a/debian/rules
+++ b/debian/rules
@@ -22,7 +22,7 @@ override_dh_auto_configure:
$(MAKE) $(IRAFARCH)
override_dh_auto_build-arch:
- $(MAKE) sysgen
+ bin=$(iraf)bin/ noaobin=$(iraf)/noao/bin/ $(MAKE) sysgen
override_dh_auto_build-indep:
# Nothing to do
@@ -40,22 +40,20 @@ override_dh_auto_install-indep:
-o -name \*.mip \
-o -name \*.fits \
-o -path ./dev/\* | \
- fgrep -v ./dev/README | \
- fgrep -v ./dev/tapecap. | \
cut -c3-) \
- extern/configure extern/README \
unix/hlib/motd \
lib/syserrmsg lib/syshelpdir ; do \
install -p -D -m 644 $$f debian/tmp/usr/share/iraf/$$f ; \
touch debian/tmp/usr/share/iraf/$$f ; \
done
+ mkdir -p debian/tmp/usr/share/iraf/extern/
+ touch debian/tmp/usr/share/iraf/extern/.zzsetenv.def
# The "touch" above is for Ubuntu
- for f in unix/hlib/cl.sh \
+ for f in unix/hlib/util.sh \
unix/hlib/mkiraf.sh unix/hlib/mkmlist.sh \
unix/hlib/irafarch.sh ; do \
install -p -D -m 755 $$f debian/tmp/usr/share/iraf/$$f ; \
done
- install -p -D -m644 unix/hlib/libc/iraf.h debian/tmp/usr/include/iraf.h
override_dh_clean:
make src
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-astro/packages/iraf.git
More information about the Debian-astro-commits
mailing list