aboutsummaryrefslogtreecommitdiff
path: root/convert_pkg
diff options
context:
space:
mode:
Diffstat (limited to 'convert_pkg')
-rwxr-xr-xconvert_pkg52
1 files changed, 52 insertions, 0 deletions
diff --git a/convert_pkg b/convert_pkg
new file mode 100755
index 0000000..fa02fbe
--- /dev/null
+++ b/convert_pkg
@@ -0,0 +1,52 @@
+#!/bin/sh
+#
+# A semi-disposable script to help convert Ureka IRAF package definitions into
+# conda packages. This should be run in the astroconda-iraf repo as
+# ./convert_pkg pkgname. It would probably be easy to put this in the Ureka
+# scripts/ dir and generalize the paths but the conversion shouldn't need doing
+# more than once.
+
+pkgname=$1
+PKGNAME=$(echo "$1" | tr a-z A-Z)
+pkgdir=iraf."$pkgname"
+urdefs=/rtfproc/unified_release/ur_work/urel/iraf_packages
+uradd=/rtfproc/unified_release/ur_work/urel/addons/irafpkg/build_list
+patches=/rtfproc/unified_release/ur_work/tmp_work/patches
+
+if [ ! -e "$pkgdir" ]; then
+
+ version=$(awk "/[ \t]$pkgname[ \t]/ {print \$3}" "$uradd")
+ version_us=$(echo "$version" | tr - _)
+
+ urpkg=$urdefs/$pkgname/$version
+
+ fn=$(awk -F '=' '/^tarfile/ {print $2}' $urpkg/ur_conf)
+
+ mkdir "$pkgdir"
+ sed -e "s|pkgname|$pkgname|" -e "s|PKGNAME|$PKGNAME|" template/meta.yaml \
+ -e "s|VERSION|$version_us|" -e "s|FILENAME|$fn|" \
+ > "$pkgdir/meta.yaml"
+
+
+ for f in bld.bat build.sh post-link.sh pre-unlink.sh; do
+ cp -p "template/$f" "$pkgdir/"
+ done
+
+ sed -i -e "s|pkgname|$pkgname|" "$pkgdir/post-link.sh" "$pkgdir/pre-unlink.sh"
+
+ for f in ur_extern.pkg ur_manifest ur_mkhelp_cmd ur_mkpkg_cmd ur_mkpkg_patterns; do
+ if [ -e "$urpkg/$f" ]; then
+ cp -p "$urpkg/$f" "$pkgdir/"
+ fi
+ done
+
+ sed -i -e '/./,$!d' "$pkgdir/ur_extern.pkg" # no longer need leading space
+
+ (cd /rtfproc/unified_release/scripts; ./convert_patches "$pkgname" "$version")
+ cp -p "${patches}/${pkgname}/ac.iraf.${pkgname}.patch" "$pkgdir/"
+
+else
+ echo "Already exists" >&2
+ exit 1
+fi
+