aboutsummaryrefslogtreecommitdiff
path: root/iraf
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@gmail.com>2016-05-24 09:35:44 -0400
committerJoseph Hunkeler <jhunkeler@gmail.com>2016-05-24 09:35:44 -0400
commit734f3d5e30f2a1baba9441ac33ef498cf385db7f (patch)
tree018586c0b26b7fe9bd08d32acd5eef906978d472 /iraf
parentb884be63c0fb89c51f80a57c41134d9041252d45 (diff)
downloadastroconda-iraf-734f3d5e30f2a1baba9441ac33ef498cf385db7f.tar.gz
Refactor recipe to support source build (in progress)
Diffstat (limited to 'iraf')
-rw-r--r--iraf/build.sh183
-rw-r--r--iraf/meta.yaml9
2 files changed, 101 insertions, 91 deletions
diff --git a/iraf/build.sh b/iraf/build.sh
index 43aa71f..b53692c 100644
--- a/iraf/build.sh
+++ b/iraf/build.sh
@@ -1,104 +1,115 @@
+# Make a log directory for "sm_logs"
+mkdir -p `pwd`/logs
+
+# Drop extraneous conda-set environment variables
+unset CFLAGS
+unset CXXFLAGS
+unset LDFLAGS
+
+# Complement build script
+# ("UR_IRAFUSER" MUST BE SET OR BUILD WILL FAIL)
+export UR_IRAFUSER=1
+export sm_logs=`pwd`/logs
+export TERM=xterm
+export FAKE_IRAF="../iraf"
-set -x
-
-export IRAFARCH=''
+# Minimal architecture detection
+# (We don't care about 64-bit)
+export IRAFARCH=
export target=`uname`.32
-export PLATFORM=
case "$target" in
-Linux.32)
-export IRAFARCH='linux'
-export CFLAGS="-m32"
-export LDFLAGS="-m32"
-export PLATFORM='linux'
-;;
-Darwin.32)
-export IRAFARCH='macosx'
-export CFLAGS="-m32 -arch i386"
-export LDFLAGS="-m32 -arch i386"
-export PLATFORM='osx'
-;;
-*)
-echo "UNSUPPORTED ARCHITECTURE (64-bit disabled, by the way...)"
-exit 1
-;;
+ Linux.32)
+ export IRAFARCH='linux'
+ ;;
+ Darwin.32)
+ export IRAFARCH='macosx'
+ ;;
+ *)
+ echo "UNSUPPORTED ARCHITECTURE (64-bit disabled, by the way...)"
+ exit 1
+ ;;
esac
-VARIANTS=http://ssb.stsci.edu/stripped/$PLATFORM/variants.tar.gz
-curl -O $VARIANTS
-tar xf variants.tar.gz -C $PREFIX
-rm -f variants.tar.gz
+# Copy working directory into PREFIX
+export iraf=$PREFIX/iraf
+#mkdir -p $iraf
+rsync -aH `pwd`/ $iraf
+cd $iraf
+
+# Execute build
+printenv
+./build 32
-mkdir -p $PREFIX/bin \
-$PREFIX/share/man
+# Creating it made no sense... now we remove it
+#rm -rfv $FAKE_IRAF
-for binary in $PREFIX/variants/common/bin/*.e
+# General tasks below
+
+# Link binaries
+mkdir -p $PREFIX/bin
+for exe in $iraf/bin_directory/*
do
-( cd $PREFIX/bin && ln -s -f $binary )
+ ( cd $PREFIX/bin && ln -s -f $exe )
done
-X11IRAF=http://ssb.stsci.edu/stripped/$PLATFORM/x11iraf.tar.gz
-curl -O $X11IRAF
-tar xf x11iraf.tar.gz
-rm -f x11iraf.tar.gz
-
-rsync -aH x11iraf/bin/ $PREFIX/bin
-rsync -aH x11iraf/man/ $PREFIX/share/man
-rm -rf x11iraf
+# Fix symlink loop in VO (can't figure it out based on the mkpkg files)
+rm -rfv "$iraf/vo/bin.generic"
+mkdir -p "$iraf/vo/bin.generic"
+rm -fv "$iraf/vo/bin"
+( cd $iraf/vo && ln -s bin.$IRAFARCH bin )
-export TERM=xterm
-if [[ $PLATFORM == "osx" ]]; then
-test -d /sw && export PATH=`purge_path /sw`
-fi
-export iraf=$PREFIX/iraf/
-
-echo "Fixing c headers..."
-find . -type f -name "*.h" | xargs sed -i -e "s|/iraf/iraf/|$iraf|"
-echo "Fixing c sources..."
-find . -type f -name "*.c" | xargs sed -i -e "s|/iraf/iraf/|$iraf|"
-mkdir -p $iraf
-rsync -aH `pwd`/ $iraf
+# Not used... ?
-cd $iraf
+#echo "Fixing c headers..."
+#find . -type f -name "*.h" | xargs sed -i -e "s|/iraf/iraf/|$iraf|"
-rm -rf bin_directory
-rm -rf $iraf/vo/bin.generic/bin.macosx
+#echo "Fixing c sources..."
+#find . -type f -name "*.c" | xargs sed -i -e "s|/iraf/iraf/|$iraf|"
+#mkdir -p $iraf
+#rsync -aH `pwd`/ $iraf
+#cd $iraf
-( cd $PREFIX/bin && \
-ln -s -f $iraf/unix/hlib/cl.sh cl && \
-ln -s -f $iraf/unix/hlib/mkiraf.sh mkiraf && \
-ln -s -f $iraf/unix/hlib/mkmlist.csh mkmlist && \
-ln -s -f $iraf/unix/bin.$IRAFARCH/generic.e generic && \
-ln -s -f $iraf/unix/bin.$IRAFARCH/mkpkg.e mkpkg && \
-ln -s -f $iraf/unix/bin.$IRAFARCH/rmbin.e rmbin && \
-ln -s -f $iraf/unix/bin.$IRAFARCH/rmfiles.e rmfiles && \
-ln -s -f $iraf/unix/bin.$IRAFARCH/rpp.e rpp && \
-ln -s -f $iraf/unix/bin.$IRAFARCH/rtar.e rtar &&\
-ln -s -f $iraf/unix/bin.$IRAFARCH/sgidispatch.e sgidispatch && \
-ln -s -f $iraf/unix/bin.$IRAFARCH/wtar.e wtar && \
-ln -s -f $iraf/unix/bin.$IRAFARCH/xc.e xc && \
-ln -s -f $iraf/unix/bin.$IRAFARCH/xpp.e && \
-ln -s -f $iraf/unix/bin.$IRAFARCH/xyacc.e xyacc )
+#rm -rf bin_directory
+#rm -rf $iraf/vo/bin.generic/bin.macosx
-UR_BUILTIN=/Users/Shared/ureka.iraf/ur_work/iraf
-find . -lname "$UR_BUILTIN/*" \
--exec sh -c 'echo Re-linking builtin paths "$0" ;\
-ln -snf "$(readlink "$0" \
-| sed -e "s|$UR_BUILTIN|../..|" -e "s|/as/|/as.$IRAFARCH/|")" "$0"' {} \;
-find . -lname '/iraf/iraf/*' \
--exec sh -c 'echo Re-linking "$0" ;\
-ln -snf "$(readlink "$0" \
-| sed -e "s|/iraf/iraf|../..|" -e "s|/as/|/as.$IRAFARCH/|")" "$0"' {} \;
+#( cd $PREFIX/bin && \
+#ln -s -f $iraf/unix/hlib/cl.sh cl && \
+#ln -s -f $iraf/unix/hlib/mkiraf.sh mkiraf && \
+#ln -s -f $iraf/unix/hlib/mkmlist.csh mkmlist && \
+#ln -s -f $iraf/unix/bin.$IRAFARCH/generic.e generic && \
+#ln -s -f $iraf/unix/bin.$IRAFARCH/mkpkg.e mkpkg && \
+#ln -s -f $iraf/unix/bin.$IRAFARCH/rmbin.e rmbin && \
+#ln -s -f $iraf/unix/bin.$IRAFARCH/rmfiles.e rmfiles && \
+#ln -s -f $iraf/unix/bin.$IRAFARCH/rpp.e rpp && \
+#ln -s -f $iraf/unix/bin.$IRAFARCH/rtar.e rtar &&\
+#ln -s -f $iraf/unix/bin.$IRAFARCH/sgidispatch.e sgidispatch && \
+#ln -s -f $iraf/unix/bin.$IRAFARCH/wtar.e wtar && \
+#ln -s -f $iraf/unix/bin.$IRAFARCH/xc.e xc && \
+#ln -s -f $iraf/unix/bin.$IRAFARCH/xpp.e && \
+#ln -s -f $iraf/unix/bin.$IRAFARCH/xyacc.e xyacc )
-echo "Removing dead symlinks..."
-find $iraf $iraf/../variants -type l | xargs -n 1 -I'{}' \
-sh -c 'file {} | grep broken | cut -f 1 -d :' | xargs rm -f
+#UR_BUILTIN=/Users/Shared/ureka.iraf/ur_work/iraf
+#find . -lname "$UR_BUILTIN/*" \
+#-exec sh -c 'echo Re-linking builtin paths "$0" ;\
+#ln -snf "$(readlink "$0" \
+#| sed -e "s|$UR_BUILTIN|../..|" -e "s|/as/|/as.$IRAFARCH/|")" "$0"' {} \;
+#
+#find . -lname '/iraf/iraf/*' \
+#-exec sh -c 'echo Re-linking "$0" ;\
+#ln -snf "$(readlink "$0" \
+#| sed -e "s|/iraf/iraf|../..|" -e "s|/as/|/as.$IRAFARCH/|")" "$0"' {} \;
+#
+#
+#echo "Removing dead symlinks..."
+#find $iraf $iraf/../variants -type l | xargs -n 1 -I'{}' \
+#sh -c 'file {} | grep broken | cut -f 1 -d :' | xargs rm -f
@@ -121,16 +132,18 @@ export RANLIB=ranlib
case "$IRAFARCH" in
macosx)
-export HSI_CF=\"-O -DMACOSX -w -Wunused -arch i386 -m32 -mmacosx-version-min=10.4\"
-export HSI_XF=\"-Inolibc -/DMACOSX -w -/Wunused -/m32 -/arch -//i386 -/mmacosx-version-min=10.4\"
-export HSI_FF=\"-O -arch i386 -m32 -DBLD_KERNEL -mmacosx-version-min=10.4\"
+export XC_CFLAGS="-Wno-return-type"
+export HSI_CF=\"-O -DMACOSX -w -Wunused -arch i386 -m32 -mmacosx-version-min=10.4 -Wno-return-type\"
+export HSI_XF=\"-Inolibc -/DMACOSX -w -/Wunused -/m32 -/arch -//i386 -/mmacosx-version-min=10.4 -/Wno-return-type\"
+export HSI_FF=\"-O -arch i386 -m32 -DBLD_KERNEL -mmacosx-version-min=10.4 -Wno-return-type\"
export HSI_LF=\"-arch i386 -m32 -mmacosx-version-min=10.4\"
;;
linux)
-export HSI_CF=\"-I\$iraf/include -O -DLINUX -DREDHAT -DPOSIX -DSYSV -w -m32 -Wunused\"
-export HSI_FF=\"-I\$iraf/include -O -DBLD_KERNEL -m32\"
-export HSI_LF=\"-I\$iraf/include -m32\"
+export XC_CFLAGS="-Wno-return-type"
+export HSI_CF=\"-I\$iraf/include -O -DLINUX -DREDHAT -DPOSIX -DSYSV -w -m32 -Wunused -Wno-return-type\"
+export HSI_FF=\"-I\$iraf/include -O -DBLD_KERNEL -m32 -Wno-return-type\"
+export HSI_LF=\"-I\$iraf/include -m32 -Wno-return-type\"
export HSI_XF=\"-I\$iraf/include -Inolibc -w -/Wunused -/m32\"
;;
@@ -187,4 +200,4 @@ unset UR_OS
unset UR_TMP
unset UR_DIR_PKG
' > $PREFIX/etc/conda/deactivate.d/iraf.sh
-chmod 755 $PREFIX/etc/conda/deactivate.d/iraf.sh \ No newline at end of file
+chmod 755 $PREFIX/etc/conda/deactivate.d/iraf.sh
diff --git a/iraf/meta.yaml b/iraf/meta.yaml
index 39c05dc..495b647 100644
--- a/iraf/meta.yaml
+++ b/iraf/meta.yaml
@@ -3,14 +3,11 @@ about:
license: MIT
summary: NOAO Image Reduction and Analysis Facility
build:
- binary_relocation: False [osx]
- detect_binary_files_with_prefix: False [osx]
+ #binary_relocation: False [osx]
+ #detect_binary_files_with_prefix: False [osx]
number: '0'
package:
name: iraf
version: 2.16.1
source:
- fn: iraf.tar.gz
- url:
- - http://ssb.stsci.edu/stripped/linux/iraf.tar.gz [linux]
- - http://ssb.stsci.edu/stripped/osx/iraf.tar.gz [osx]
+ git_url: /eng/ssb/jhunk/git-repos/iraf.git