debian/0000755000000000000000000000000012264535445007200 5ustar debian/README.Source0000644000000000000000000000053512260540314011305 0ustar The original -kit tar file contains a number of additional components which are not DFSG-free (namely gasgano), or already included in Debian (like cpl, esorex, and additional libraries). Only the pipeline sources and calibration files are extracted from this -kit tar file. -- Ole Streicher Tue, 01 Dec 2013 09:18:46 +0100 debian/cpl-plugin-doc.manpages.in0000644000000000000000000000001112260540344014115 0ustar man/*.7 debian/repackage.sh0000755000000000000000000000376112260540344011456 0ustar #!/bin/sh # # The ESO pipeline packages come in the form of a "kit" containing all # packages needed to build the pipeline. This also includes some non-free # packages like Gasgano. # To allow the pipelines to be put to Debian "main", and to have a more # convienient build process, we extract just the source package. # # Debian package name ("cpl-plugin-fors") DEBIAN_PACKAGE=$(echo $(basename $3) | cut -d_ -f1) # Pipeline name ("fors") PIPELINE=$(echo ${DEBIAN_PACKAGE} | cut -d- -f3-) # Version number ("4.9.4") VERSION=$2 # Include full calibration set? # If not, the "calib" package will act as a "downloader" package for the # calibration files. INCLUDE_CALIB="no" #INCLUDE_CALIB="yes" # Include test data? # If not, the test (fits) data are removed from the source package. # In this case, also the tests need to be adjusted. #INCLUDE_TEST_DATA="no" INCLUDE_TEST_DATA="yes" BASEDIR=$(dirname $3) FILENAME=${BASEDIR}/${PIPELINE}-kit-${VERSION}.tar.gz tar xf ${FILENAME} -C ${BASEDIR} rm -f ${BASEDIR}/${DEBIAN_PACKAGE}_${VERSION}.orig*.tar.* ${FILENAME} TAREXCLUDE="--exclude ${PIPELINE}-${VERSION}/html" if [ $INCLUDE_TEST_DATA = "no" ] ; then TAREXCLUDE=${TAREXCLUDE}" --exclude ${PIPELINE}-${VERSION}/*/tests/ref_data" fi tar xf ${BASEDIR}/${PIPELINE}-kit-${VERSION}/${PIPELINE}-${VERSION}.tar.gz\ -C ${BASEDIR} ${TAREXCLUDE} tar xf ${BASEDIR}/${PIPELINE}-kit-${VERSION}/${PIPELINE}-calib-${VERSION}.tar.gz\ -C ${BASEDIR}/${PIPELINE}-${VERSION}/ mv ${BASEDIR}/${PIPELINE}-${VERSION}/${PIPELINE}-calib-${VERSION}/ \ ${BASEDIR}/${PIPELINE}-${VERSION}/calib/ if [ $INCLUDE_CALIB = "no" ] ; then du -s ${BASEDIR}/${PIPELINE}-${VERSION}/calib/cal | cut -f1 \ > ${BASEDIR}/${PIPELINE}-${VERSION}/calib/cal_size rm -rf ${BASEDIR}/${PIPELINE}-${VERSION}/calib/cal fi tar cJf ${BASEDIR}/${DEBIAN_PACKAGE}_${VERSION}+dfsg.orig.tar.xz \ -C ${BASEDIR} ${PIPELINE}-${VERSION}/ rm -rf ${BASEDIR}/${PIPELINE}-${VERSION}/ rm -rf ${BASEDIR}/${PIPELINE}-kit-${VERSION}/ exec uupdate --no-symlink "$@" debian/create_sphinx.py0000644000000000000000000001515412264534006012404 0ustar #!/usr/bin/env python import cpl import os import sys import re rst_template = '''The {recipe} recipe =============================================================== .. data:: {recipe} Synopsis -------- {synopsis} Description ----------- {description} Constructor ----------- .. method:: cpl.Recipe("{recipe}") :noindex: Create an object for the recipe {recipe}. :: import cpl {recipe} = cpl.Recipe("{recipe}") {parameters} .. seealso:: `cpl.Recipe `_ for more information about the recipe object. Bug reports ----------- Please report any problems to `{author} <{email}>`_. Alternatively, you may send a report to the `ESO User Support Department `_. Copyright --------- {license} .. codeauthor:: {author} <{email}> ''' par_template = '''.. py:attribute:: {recipe}.param.{par} {description} [default={default}]. ''' fname_template ="{recipe}.rst" index_template = '''.. title:: Overview The {PIPELINE} {version} pipeline ################################### These pages describe the python interface for the {PIPELINE} pipeline recipes. {recipes} .. toctree:: :hidden: {toctree} .. seealso:: * The `{PIPELINE} Pipeline User Manual `_ in PDF format, * an `overview `_ over the existing ESO pipelines, * the `python-cpl `_ package. Bug reports =========== If you experience an unexpected behavior of any component of the {PIPELINE} pipeline recipes package, please, first refer to the list of known problems and limitations in the pipeline manual of the current {PIPELINE} pipeline release. For any other issues or requests, please, send a report to the `ESO User Support Department `_, describing: * the {PIPELINE} pipeline version, * the version of your OS and C compiler, * the exact sequence of actions that were performed before the problem occurred, * what were precisely the symptoms and the possible error message(s), * whether the problem is repeatable. ''' rst_partemplate = '''Parameters ---------- {pars} The following code snippet shows the default settings for the available parameters. :: import cpl {recipe} = cpl.Recipe("{recipe}") {pars_example1} You may also set or overwrite some or all parameters by the recipe parameter `param`, as shown in the following example: :: import cpl {recipe} = cpl.Recipe("{recipe}") [...] res = {recipe}( ..., param = {{{pars_example2}}}) ''' conf_template = '''project = u'{PIPELINE} pipeline' version = '{version}' release = '{version}' master_doc = 'index' show_authors = True html_theme = 'sphinxdoc' ''' pipeline = sys.argv[1] cpl.Recipe.path = "recipes" recipes = [ cpl.Recipe(name) for name, version in cpl.Recipe.list() ] oca = file(os.path.join("calib", "gasgano", "config", pipeline + ".oca")).read() oca = oca[oca.find("action"):] recipes_oca = [recipe for recipe in recipes if recipe.__name__ in oca] index = [ oca.find(recipe.__name__) for recipe in recipes_oca ] recipes_oca = [r for (i, r) in sorted(zip(index, recipes_oca))] recipes_x = [recipe for recipe in recipes if not recipe.__name__ in oca] recipes_x.sort() def par(recipe, template, delimiter = "", count = None): return delimiter.join(template.format( recipe = recipe.__name__, par = p.name.replace("-","_"), type = p.type.__name__, description = p.__doc__.replace("\n", " "), default = '"{0}"'.format(p.default) if p.type is str else p.default ) for i, p in enumerate(recipe.param) if count is None or i < count) def get_description(s): o = [] l = s.splitlines() enabled = True for i, s in enumerate(l): if "BASIC PARAMETERS" in s: enabled = False elif "Examples:" in s: enabled = False elif "Input files" in s: enabled = True o += ["Input files", "^^^^^^^^^^^^", "::"] if len(l[i+1]) != 0: o += [""] elif "Output files" in s: enabled = True o += ["Output files", "^^^^^^^^^^^^", "::"] if len(l[i+1]) != 0: o += [""] elif not enabled: continue elif "-"*40 in s: pass elif len(s) == 0: o += [ s ] elif s[-1] == ".": o += [ s, "" ] else: o += [ s ] return "\n".join(o) def rstpage(recipe, template, partemplate): return template.format( recipe = recipe.__name__, version = recipe.__version__, synopsis = recipe.description[0], description = get_description(recipe.description[1]), email = recipe.__email__, author = recipe.__author__, license = recipe.__copyright__, pipeline = pipeline, parameters = partemplate.format( recipe = recipe.__name__, pars = par(recipe, par_template), pars_example1 = par(recipe, ' {recipe}.param.{par} = {default}\n'), pars_example2 = par(recipe, '"{par}":{default}', ', ', 2) ) if len(recipe.param) > 0 else '' ) for recipe in recipes_oca + recipes_x: f = open(os.path.join("sphinx", fname_template.format(recipe = recipe.__name__)), "w") f.write(rstpage(recipe, rst_template, rst_partemplate)) f.close() if len(recipes_oca) > 0 and len(recipes_x) > 0: toc_recipes = "Standard recipes\n----------------\n" toc_recipes += "\n\n".join(":data:`{recipe}`\n {synopsis}".format( recipe = recipe.__name__, synopsis = recipe.description[0] ) for recipe in recipes_oca) if len(recipes_oca) > 0 and len(recipes_x) > 0: toc_recipes += "\n\nAdditional recipes\n--------------------\n" toc_recipes += "\n\n".join(":data:`{recipe}`\n {synopsis}".format( recipe = recipe.__name__, synopsis = recipe.description[0] ) for recipe in recipes_x) toc = "\n".join(" {recipe}".format( recipe = recipe.__name__ ) for recipe in recipes_oca + recipes_x) f = open(os.path.join("sphinx", "index.rst"), "w") f.write(index_template.format(toctree = toc, recipes = toc_recipes, pipeline = pipeline, PIPELINE = pipeline.upper(), version = recipes[0].__version__)) f.close() f = open(os.path.join("sphinx", "conf.py"), "w") f.write(conf_template.format(PIPELINE = pipeline.upper(), version = recipes[0].__version__)) f.close() debian/compat0000644000000000000000000000000212260540314010361 0ustar 9 debian/changelog0000644000000000000000000000132312264534245011046 0ustar cpl-plugin-giraf (2.11.1+dfsg-3) unstable; urgency=low * Lower -doc dependency to "suggested" * Declare Breaks/Replaces with initial version. (Closes: #734916) -- Ole Streicher Sun, 12 Jan 2014 16:44:22 +0100 cpl-plugin-giraf (2.11.1+dfsg-2) unstable; urgency=low * Enable verbose test output * Upgrade to Standards-Version 3.9.5 (no changes needed) * Move documentation into separate package. (Closes: #733342) * Fix documentation title. -- Ole Streicher Tue, 31 Dec 2013 14:12:15 +0100 cpl-plugin-giraf (2.11.1+dfsg-1) unstable; urgency=low * Initial release. (Closes: #709323) -- Ole Streicher Tue, 03 Dec 2013 22:09:34 +0100 debian/cpl-plugin.install.in0000644000000000000000000000020012260540314013222 0ustar usr/lib/* calib/dic usr/share/cpl-plugins/__PIPELINE__-__VERSION__ calib/gasgano usr/share/cpl-plugins/__PIPELINE__-__VERSION__ debian/control0000644000000000000000000000443612264535344010610 0ustar Source: cpl-plugin-giraf Section: science Priority: optional Maintainer: Debian Science Maintainers Uploaders: Ole Streicher Build-Depends: debhelper (>= 9), dh-autoreconf, libcpl-dev (>= 5.3.1), python, python-cpl, python-pyfits, python-sphinx Standards-Version: 3.9.5 Homepage: http://www.eso.org/sci/software/pipelines/giraffe/giraf-pipe-recipes.html Vcs-Git: git://anonscm.debian.org/debian-science/packages/cpl-plugin-giraf.git Vcs-Browser: http://anonscm.debian.org/gitweb/?p=debian-science/packages/cpl-plugin-giraf.git Package: cpl-plugin-giraf Architecture: any Depends: ${misc:Depends}, ${shlibs:Depends} Recommends: esorex|python-cpl Suggests: cpl-plugin-giraf-calib (= ${binary:Version}), cpl-plugin-giraf-doc Multi-Arch: same Description: ESO data reduction pipeline for GIRAFFE This is the data reduction pipeline for the GIRAFFE instrument of the Very Large Telescope (VLT) from the European Southern Observatory (ESO). . GIRAFFE is a medium-high resolution (R=7500-30000) spectrograph for the entire visible range 370-900 nm. GIRAFFE is aimed at carrying out intermediate and high resolution spectroscopy of galactic and extragalactic objects having a high spatial density. The name comes from the first design, where the spectrograph was standing vertically on a platform. Package: cpl-plugin-giraf-doc Architecture: all Multi-Arch: foreign Depends: ${misc:Depends} Replaces: cpl-plugin-giraf (= 2.11.1+dfsg-1) Breaks: cpl-plugin-giraf (= 2.11.1+dfsg-1) Section: doc Description: ESO data reduction pipeline documentation for GIRAFFE This package contains the HTML documentation and manpages for the data reduction pipeline for the GIRAFFE instrument of the Very Large Telescope (VLT) from the European Southern Observatory (ESO). Package: cpl-plugin-giraf-calib Architecture: all Multi-Arch: foreign Depends: ${misc:Depends}, cpl-plugin-giraf, wget Section: contrib/science Description: ESO data reduction pipeline calibration data downloader for GIRAFFE This package downloads calibration data of the data reduction pipeline for the GIRAFFE instrument of the Very Large Telescope (VLT) from the European Southern Observatory (ESO). debian/copyright0000644000000000000000000000171512264534006011127 0ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: giraf Upstream-Contact: ESO User Support Department Source: ftp://ftp.eso.org/pub/dfs/pipelines/giraffe/ Files: * Copyright: Copyright (C) 2001-2012 European Southern Observatory 2013 Ole Streicher (Debian packaging) License: GPL-v2+ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . On Debian systems, the full text of the GNU General Public License version 2 can be found in the file `/usr/share/common-licenses/GPL-2'. debian/cpl-plugin-calib.prerm.in0000644000000000000000000000013512260540314013760 0ustar #!/bin/sh set -e rm -rfd /usr/share/cpl-plugins/__PIPELINE__-__VERSION__/cal/ #DEBHELPER# debian/cpl-plugin-calib.postinst.in0000644000000000000000000000074512264534006014532 0ustar #!/bin/sh set -e PIPELINE=__PIPELINE__ VERSION=__VERSION__ KIT=${PIPELINE}-kit-${VERSION} CALIB=${PIPELINE}-calib-${VERSION} URL=ftp://ftp.eso.org/pub/dfs/pipelines/giraffe/${KIT}.tar.gz TAR=${KIT}/${CALIB}.tar.gz COMPONENTS="${CALIB}/cal" TARGETDIR="/usr/share/cpl-plugins/${PIPELINE}-${VERSION}" if [ "$1" = "configure" ] ; then mkdir -p ${TARGETDIR} wget -O- ${URL} | \ tar xzO ${TAR} | \ tar xzC ${TARGETDIR} ${COMPONENTS} --strip-components=1 fi #DEBHELPER# debian/watch0000644000000000000000000000022012264534006010213 0ustar version=3 opts=dversionmangle=s/\+dfsg// \ http://www.eso.org/sci/software/pipelines/ \ .*/giraf-kit-(.*).tar.gz \ debian debian/repackage.sh debian/cpl-plugin-calib.lintian-overrides.in0000644000000000000000000000016512260540314016274 0ustar # The calibration file installer is an empty package on purpose. cpl-plugin-__PIPELINE__-calib: empty-binary-package debian/cpl-plugin-doc.docs.in0000644000000000000000000000001412260540344013255 0ustar sphinx/html debian/patches/0000755000000000000000000000000012264534501010617 5ustar debian/patches/libadd_cpl.patch0000644000000000000000000000450612264534006013722 0ustar Author: Ole Streicher Description: Add the cpl libraries to the recips.so and the test program --- a/recipes/Makefile.am +++ b/recipes/Makefile.am @@ -35,36 +35,36 @@ gimasterflat.la giscience.la gistandard.la giwavecalibration.la gimasterflat_la_SOURCES = gimasterflat.c -gimasterflat_la_LIBADD = $(LIBGIRAFFE) +gimasterflat_la_LIBADD = $(LIBGIRAFFE) $(LIBCPLCORE) $(LIBCPLDFS) $(LIBCPLUI) $(LIBCEXT) gimasterflat_la_LDFLAGS = -module -avoid-version gimasterflat_la_DEPENDENCIES = $(LIBGIRAFFE) gimasterbias_la_SOURCES = gimasterbias.c -gimasterbias_la_LIBADD = $(LIBGIRAFFE) +gimasterbias_la_LIBADD = $(LIBGIRAFFE) $(LIBCPLCORE) $(LIBCPLDFS) $(LIBCPLUI) $(LIBCEXT) gimasterbias_la_LDFLAGS = -module -avoid-version gimasterbias_la_DEPENDENCIES = $(LIBGIRAFFE) gimasterdark_la_SOURCES = gimasterdark.c -gimasterdark_la_LIBADD = $(LIBGIRAFFE) +gimasterdark_la_LIBADD = $(LIBGIRAFFE) $(LIBCPLCORE) $(LIBCPLDFS) $(LIBCPLUI) $(LIBCEXT) gimasterdark_la_LDFLAGS = -module -avoid-version gimasterdark_la_DEPENDENCIES = $(LIBGIRAFFE) giwavecalibration_la_SOURCES = giwavecalibration.c -giwavecalibration_la_LIBADD = $(LIBGIRAFFE) +giwavecalibration_la_LIBADD = $(LIBGIRAFFE) $(LIBCPLCORE) $(LIBCPLDFS) $(LIBCPLUI) $(LIBCEXT) giwavecalibration_la_LDFLAGS = -module -avoid-version giwavecalibration_la_DEPENDENCIES = $(LIBGIRAFFE) giscience_la_SOURCES = giscience.c -giscience_la_LIBADD = $(LIBGIRAFFE) +giscience_la_LIBADD = $(LIBGIRAFFE) $(LIBCPLCORE) $(LIBCPLDFS) $(LIBCPLUI) $(LIBCEXT) giscience_la_LDFLAGS = -module -avoid-version giscience_la_DEPENDENCIES = $(LIBGIRAFFE) gistandard_la_SOURCES = gistandard.c -gistandard_la_LIBADD = $(LIBGIRAFFE) +gistandard_la_LIBADD = $(LIBGIRAFFE) $(LIBCPLCORE) $(LIBCPLDFS) $(LIBCPLUI) $(LIBCEXT) gistandard_la_LDFLAGS = -module -avoid-version gistandard_la_DEPENDENCIES = $(LIBGIRAFFE) giframestack_la_SOURCES = giframestack.c -giframestack_la_LIBADD = $(LIBGIRAFFE) +giframestack_la_LIBADD = $(LIBGIRAFFE) $(LIBCPLCORE) $(LIBCPLDFS) $(LIBCPLUI) $(LIBCEXT) giframestack_la_LDFLAGS = -module -avoid-version giframestack_la_DEPENDENCIES = $(LIBGIRAFFE) --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -33,7 +33,7 @@ AM_CPPFLAGS = -I$(top_builddir)/giraffe -I$(top_srcdir)/giraffe -LDADD = $(LIBGIRAFFE) +LDADD = $(LIBGIRAFFE) $(LIBCPLCORE) $(LIBCPLUI) check_PROGRAMS = debian/patches/series0000644000000000000000000000013212264534501012030 0ustar libadd_cpl.patch set_plugindir.patch use-std-paths-for-cpl.patch force-serial-tests.patch debian/patches/set_plugindir.patch0000644000000000000000000000061312264534006014510 0ustar Author: Ole Streicher Description: Set the plugin directory so that esorex and python-cpl can find it. --- a/acinclude.m4 +++ b/acinclude.m4 @@ -91,7 +91,7 @@ [ if test -z "$plugindir"; then - plugindir='${libdir}/esopipes-plugins/${PACKAGE}-${VERSION}' + plugindir='${libdir}/cpl/plugins/${PACKAGE}-${VERSION}' fi AC_SUBST(plugindir) debian/patches/fix_test_fail.patch0000644000000000000000000000075412264534011014462 0ustar Author: Ole Streicher Description: Increase tolerance to fix FTBS on mips and ia64 --- a/irplib/tests/irplib_polynomial-test.c +++ b/irplib/tests/irplib_polynomial-test.c @@ -569,7 +569,7 @@ for (i = nreal; i < degree; i++) { const double root = cpl_vector_get(roots, i); - cpl_test_abs(root, cpl_vector_get(self, i), tolerance); + cpl_test_abs(root, cpl_vector_get(self, i), 2*tolerance); /* FIXME: Verify residual as well */ debian/patches/force-serial-tests.patch0000644000000000000000000000142612264534011015352 0ustar Author: Ole Streicher Description: Force serial-tests to get better verbose output Bug: http://bugs.debian.org/715204 --- a/tests/Makefile.am +++ b/tests/Makefile.am @@ -17,7 +17,7 @@ ## along with this program; if not, write to the Free Software ## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -AUTOMAKE_OPTIONS = 1.8 foreign +AUTOMAKE_OPTIONS = 1.13 foreign serial-tests DISTCLEANFILES = *~ --- a/regtests/tests/Makefile.am +++ b/regtests/tests/Makefile.am @@ -17,7 +17,7 @@ ## along with this program; if not, write to the Free Software ## Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA -AUTOMAKE_OPTIONS = 1.8 foreign +AUTOMAKE_OPTIONS = 1.13 foreign serial-tests DISTCLEANFILES = *~ debian/patches/use-std-paths-for-cpl.patch0000644000000000000000000000361312264534006015704 0ustar Author: Ole Streicher Description: Use standard path and name for cpl --- a/m4/cpl.m4 +++ b/m4/cpl.m4 @@ -8,7 +8,7 @@ cpl_cfitsio_check_version="3.270" cpl_cfitsio_check_header="fitsio.h" - cpl_cfitsio_check_lib="libcfitsio.a" + cpl_cfitsio_check_lib="libcfitsio.so" cpl_cfitsio_incdirs="" cpl_cfitsio_libdirs="" @@ -109,7 +109,7 @@ cpl_cfitsio_libdirs="$cpl_cfitsio_libdirs /usr/lib64" cpl_cfitsio_libdirs="$cpl_cfitsio_libdirs /usr/lib" cpl_cfitsio_libdirs="$cpl_cfitsio_libdirs /usr/lib32" - + cpl_cfitsio_libdirs="$cpl_cfitsio_libdirs /usr/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)" test -n "$CFITSIODIR" && \ cpl_cfitsio_libdirs="$CFITSIODIR/lib64 $CFITSIODIR/lib \ $CFITSIODIR/lib32 $cpl_cfitsio_libdirs" @@ -556,6 +556,7 @@ cpl_cext_libdirs="$cpl_cext_libdirs /usr/lib64" cpl_cext_libdirs="$cpl_cext_libdirs /usr/lib" cpl_cext_libdirs="$cpl_cext_libdirs /usr/lib32" + cpl_cext_libdirs="$cpl_cext_libdirs /usr/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)" test -n "$CPLDIR" && \ cpl_cext_libdirs="$CPLDIR/lib64 \ @@ -840,7 +841,7 @@ AC_MSG_CHECKING([for CPL]) cpl_check_cpl_header="cpl.h" - cpl_check_cpl_lib="libcplcore.a" + cpl_check_cpl_lib="libcplcore.so" cpl_incdirs="" cpl_libdirs="" @@ -917,6 +918,7 @@ cpl_libdirs="$cpl_libdirs /usr/lib64" cpl_libdirs="$cpl_libdirs /usr/lib" cpl_libdirs="$cpl_libdirs /usr/lib32" + cpl_libdirs="$cpl_libdirs /usr/lib/$(dpkg-architecture -qDEB_HOST_MULTIARCH)" test -n "$CPLDIR" && \ cpl_libdirs="$CPLDIR/lib64 $CPLDIR/lib $CPLDIR/lib32 \ debian/cpl-plugin-doc.doc-base.in0000644000000000000000000000150112260540344014004 0ustar Document: cpl-plugin-__PIPELINE__ Title: __PIPELINE__ pipeline documentation Section: Science/Astronomy Abstract: The __PIPELINE__ pipeline is a subsystem of the Data Flow System for handling data taken with the Very Large Telescope (VLT) of the European Southern Observatory (ESO). It provides the standard algorithms for the quick-look assessment of data, the generation of master calibration data, the reduction of scientific exposures, in the data quality control. The FORS pipeline recipes are made public to the user community, to enable a more personalised processing of the data from the instrument. . This document describes the Python interface for the __PIPELINE__ pipeline. Format: HTML Index: /usr/share/doc/cpl-plugin-__PIPELINE__-doc/html/index.html Files: /usr/share/doc/cpl-plugin-__PIPELINE__-doc/html/* debian/rules0000755000000000000000000000437112260540344010253 0ustar #!/usr/bin/make -f # -*- makefile -*- #export DH_VERBOSE=1 DEBVERS ?= $(shell dpkg-parsechangelog | sed -n -e 's/^Version: //p') VERSION ?= $(shell echo '$(DEBVERS)' | sed -e 's/^[[:digit:]]*://' -e 's/[-].*//' -e 's/+.*//') DEBPKGNAME ?= $(shell dpkg-parsechangelog | grep -E ^Source: | cut -d" " -f2) PIPELINE ?= $(shell echo '$(DEBPKGNAME)' | sed -e 's/cpl-plugin-//') get-orig-source: sh ./debian/repackage.sh %: dh $@ --with autoreconf,sphinxdoc debian_files: if [ -d calib/cal ] ; then \ dfiles=".install -doc.manpages -doc.docs -doc.doc-base -calib.install" ; \ else \ cp -f debian/README.Debian.in debian/README.Debian ; \ dfiles=".install -doc.manpages -doc.docs -doc.doc-base -calib.postinst -calib.prerm -calib.lintian-overrides" ; \ fi ; \ for f in $$dfiles ; do \ sed "s/__VERSION__/$(VERSION)/g;s/__PIPELINE__/${PIPELINE}/g" \ < debian/cpl-plugin$$f.in \ > debian/${DEBPKGNAME}$$f ; \ done override_dh_install: debian_files dh_install override_dh_installman-indep: mkdir -p man python debian/create_manpage.py ${PIPELINE} dh_installman override_dh_installdocs-indep: mkdir -p sphinx python debian/create_sphinx.py ${PIPELINE} sphinx-build sphinx sphinx/html dh_installdocs override_dh_sphinxdoc: if [ -d sphinx ] ; then \ dh_sphinxdoc ; \ fi override_dh_clean: dh_clean rm -rf debian/${DEBPKGNAME}.install \ debian/${DEBPKGNAME}-doc.manpages \ debian/${DEBPKGNAME}-doc.docs \ debian/${DEBPKGNAME}-doc.doc-base \ debian/${DEBPKGNAME}-calib.lintian-overrides \ debian/${DEBPKGNAME}-calib.install \ debian/${DEBPKGNAME}-calib.postinst \ debian/${DEBPKGNAME}-calib.prerm \ debian/README.Debian \ man sphinx override_dh_auto_configure: dh_auto_configure -- --prefix=/usr/ override_dh_makeshlibs: sed -i "/dependency_libs/ s/'.*'/''/" `find . -name '*.la'` override_dh_installchangelogs: if [ -s ChangeLog ] ; then \ dh_installchangelogs ChangeLog ; \ else \ dh_installchangelogs ; \ fi override_dh_gencontrol-indep: dh_gencontrol if [ ! -d calib/cal ] ; then \ sed "s/Installed-Size:.*/Installed-Size: $(shell cat calib/cal_size)/" -i debian/${DEBPKGNAME}-calib/DEBIAN/control ; \ fi debian/source/0000755000000000000000000000000012260540314010463 5ustar debian/source/format0000644000000000000000000000001412260540314011671 0ustar 3.0 (quilt) debian/create_manpage.py0000644000000000000000000000707012264534006012501 0ustar #!/usr/bin/env python import cpl import os import sys import re man_template = '''.TH {NAME} "{section}" "{version}" "{name}" "{pipeline} recipes" .SH NAME {name} - {synopsis} .SH SYNOPSIS esorex .B {name} [OPTIONS] FILE.sof .SH DESCRIPTION {description} .SH OPTIONS {options} .PP Note that it is possible to create a configuration file containing these options, along with suitable default values. Please refer to the details provided by the 'esorex --help' command. .SH SEE ALSO The full documentation for the {pipeline} pipeline can be downloaded as a PDF file using the following URL: .IP .B ftp://ftp.eso.org/pub/dfs/pipelines/giraffe/{pipeline}-pipeline-manual-2.11.pdf .PP An overview over the existing ESO pipelines can be found on the web page \\fBhttp://www.eso.org/sci/software/pipelines/\\fR. .PP Basic documentation about the EsoRex program can be found at the esorex (1) man page. .PP It is possible to call the pipelines from python using the python-cpl package. See \\fBhttp://packages.python.org/python-cpl/index.html\\fR for further information. .PP The other recipes of the {pipeline} pipeline are {seealso} .SH VERSION {name} {version} .SH AUTHOR {author} <{email}> .SH BUG REPORTS Please report any problems to {email}. Alternatively, you may send a report to the ESO User Support Department . .SH LICENSE {license} ''' par_template = '''.TP \\fB--{name}\\fR \\fI<{type}>\\fR {description}. The full name of this option for the EsoRex configuration file is \\fB{fullname}\\fR [default = \\fI{default}\\fR]. ''' seealso_template = ".IR {name} ({section})" fname_template ="{name}.{section}" section = 7 pipeline = sys.argv[1] cpl.Recipe.path = "recipes" recipes = cpl.Recipe.list() def param(recipe, template): return "".join(template.format(name = p.name, fullname = p.fullname, type = p.type.__name__, description = p.__doc__.replace("'", "\\'"), default = p.default) for p in recipe.param) def seealso(recipe, template): return ",\n".join(template.format(name = name, section=section) for name,v in recipes if (name != recipe.__name__)) def manpage(recipe): description = recipe.description[1] description = re.sub("-"*40+"+", "", description) \ .replace(".\n", ".\n.PP\n").replace("'", "\\'") description = re.sub("\n([A-Z][A-Z 0-9]+):?\n----+", "\n.SS \\1", description) return man_template.format(name = recipe.__name__, NAME = recipe.__name__.upper(), section = section, version = recipe.__version__, synopsis = recipe.description[0], description = description, seealso = seealso(recipe, seealso_template), email = recipe.__email__, author = recipe.__author__, license = recipe.__copyright__, pipeline = pipeline, options = param(recipe, par_template)) for name, version in recipes: recipe = cpl.Recipe(name) f = open(os.path.join("man", fname_template.format(name = name, section=section)), "w") f.write(manpage(recipe).replace('-', '\\-')) f.close() debian/cpl-plugin-calib.install.in0000644000000000000000000000007112260540314014300 0ustar calib/cal usr/share/cpl-plugins/__PIPELINE__-__VERSION__ debian/README.Debian.in0000644000000000000000000000034612260540314011634 0ustar Due to their size, static calibration files are not included. Installing the "calib" subpackage will download the corresponding files from the ESO archive. -- Ole Streicher Fri, 13 Sep 2013 18:50:00 +0200