diff --git a/lalapps/debian/changelog b/lalapps/debian/changelog index b835157dd67edfec3eb431d9d73fb11fdfe793be..ec2b115bdf8d891ab3cca3f93822b11687e5d3ba 100644 --- a/lalapps/debian/changelog +++ b/lalapps/debian/changelog @@ -1,3 +1,9 @@ +lalapps (6.5.0-1lscsoft3) unstable; urgency=low + + * LALApps 6.5.0, rewritten rules to use pyversions + + -- Steffen Grunewald <steffen.grunewald@aei.mpg.de> Thu, 17 Feb 2011 12:05:00 +0100 + lalapps (6.5.0-1lscsoft1) unstable; urgency=low * LALApps 6.5.0 diff --git a/lalapps/debian/control b/lalapps/debian/control index 0400e90641e5bd7d5a1cf07e9a9d4d2c56ba6c7b..68a047ccc9fb67e8ab5ec36ea4cf4dae87b0b85e 100644 --- a/lalapps/debian/control +++ b/lalapps/debian/control @@ -2,13 +2,13 @@ Source: lalapps Section: lscsoft Priority: optional Maintainer: Steffen Grunewald <steffen.grunewald@aei.mpg.de> -Build-Depends: debhelper (>= 5), libgsl0-dev (>= 1.9), libframe-dev (>= 8.0), libmetaio-dev (>= 8.2), fftw3-dev, zlib1g-dev, libcfitsio3-dev, lal-dev (>= 6.5), lalstochastic-dev (>= 1.1.1), lalframe-dev (>= 1.0.1), lalmetaio-dev (>= 1.0.1), lalburst-dev (>= 1.0.1), lalinspiral-dev (>= 1.1.0), lalpulsar-dev (>= 1.1.0), pkg-config, python2.4-dev, python2.5-dev, python-dev (>= 2.4) +Build-Depends: debhelper (>= 5), libgsl0-dev (>= 1.9), libframe-dev (>= 8.0), libmetaio-dev (>= 8.2), fftw3-dev, zlib1g-dev, libcfitsio3-dev, lal-dev (>= 6.5), lalstochastic-dev (>= 1.1.1), lalframe-dev (>= 1.0.1), lalmetaio-dev (>= 1.0.1), lalburst-dev (>= 1.0.1), lalinspiral-dev (>= 1.1.0), lalpulsar-dev (>= 1.1.0), pkg-config, python-all-dev (>= 2.4) Standards-Version: 3.7.2 Package: lalapps Architecture: any -Depends: ${shlibs:Depends}, ${misc:Depends}, zlib1g, libgsl0 (>= 1.9) | libgsl0ldbl (>= 1.10), libframe1 (>= 8.0), libmetaio1 (>= 8.2), fftw3, libcfitsio3, lal (>= 6.5), lalstochastic (>= 1.1.1), lalframe (>= 1.0.1), lalmetaio (>= 1.0.1), lalburst (>= 1.0.1), lalinspiral (>= 1.1.0), lalpulsar (>= 1.1.0), python (>= 2.4) -Recommends: python2.4, python2.5 +Depends: ${shlibs:Depends}, ${misc:Depends}, zlib1g, libgsl0 (>= 1.9) | libgsl0ldbl (>= 1.10), libframe1 (>= 8.0), libmetaio1 (>= 8.2), fftw3, libcfitsio3, lal (>= 6.5), lalstochastic (>= 1.1.1), lalframe (>= 1.0.1), lalmetaio (>= 1.0.1), lalburst (>= 1.0.1), lalinspiral (>= 1.1.0), lalpulsar (>= 1.1.0), $(python:Depends) +Recommends: python (>= 2.4) Description: LSC Algorithm Library Applications The LSC Algorithm Library Applications for gravitational wave data analysis. This package contains applications that are built on tools in the diff --git a/lalapps/debian/dirs b/lalapps/debian/dirs index c0229364751c52bb899b706f619eac5cf9d256ec..8d38a1aa68975433c5a9ad39118690162353a2bc 100644 --- a/lalapps/debian/dirs +++ b/lalapps/debian/dirs @@ -1,7 +1,7 @@ -opt/lscsoft/lalapps/bin -opt/lscsoft/lalapps/etc -opt/lscsoft/lalapps/lib/python2.4 -opt/lscsoft/lalapps/lib/python2.5 -opt/lscsoft/lalapps/sbin -opt/lscsoft/lalapps/share/lalapps -opt/lscsoft/lalapps/share/man +#opt/lscsoft/lalapps/bin +#opt/lscsoft/lalapps/etc +#opt/lscsoft/lalapps/lib/python2.4 +#opt/lscsoft/lalapps/lib/python2.5 +#opt/lscsoft/lalapps/sbin +#opt/lscsoft/lalapps/share/lalapps +#opt/lscsoft/lalapps/share/man diff --git a/lalapps/debian/lalapps-user-env.csh b/lalapps/debian/lalapps-user-env.csh index 42dbe4af350b61b959db02e33b04e4c2cadd5d52..4e99150c2bcfb0897b6acfd4dfebfe6485ab781d 100644 --- a/lalapps/debian/lalapps-user-env.csh +++ b/lalapps/debian/lalapps-user-env.csh @@ -1,13 +1,15 @@ # Source this file to access LALApps -setenv PATH "/opt/lscsoft/lalapps/bin:${PATH}" +setenv LALAPPS_PREFIX /opt/lscsoft/lalapps +#setenv LALAPPS_PREFIX /usr +setenv PATH "${LALAPPS_PREFIX}/bin:${PATH}" setenv PYSITE_PATH python`python -V |& cut -d' ' -f2 | cut -d. -f-2` if ( $?MANPATH ) then - setenv MANPATH "/opt/lscsoft/lalapps/share/man:${MANPATH}" + setenv MANPATH "${LALAPPS_PREFIX}/share/man:${MANPATH}" else - setenv MANPATH "/opt/lscsoft/lalapps/share/man" + setenv MANPATH "${LALAPPS_PREFIX}/share/man" endif if ( $?PYTHONPATH ) then - setenv PYTHONPATH "/opt/lscsoft/lalapps/lib/${PYSITE_PATH}/site-packages:${PYTHONPATH}" + setenv PYTHONPATH "${LALAPPS_PREFIX}/lib/${PYSITE_PATH}/site-packages:${PYTHONPATH}" else - setenv PYTHONPATH "/opt/lscsoft/lalapps/lib/${PYSITE_PATH}/site-packages" + setenv PYTHONPATH "${LALAPPS_PREFIX}/lib/${PYSITE_PATH}/site-packages" endif diff --git a/lalapps/debian/lalapps-user-env.sh b/lalapps/debian/lalapps-user-env.sh index 087d3ce85aa8bdf159cb07f91866e25ff4409f84..3c969d31b1957c7f7461532002ac5cbc50581a87 100644 --- a/lalapps/debian/lalapps-user-env.sh +++ b/lalapps/debian/lalapps-user-env.sh @@ -1,6 +1,9 @@ # Source this file to access LALApps -PATH="/opt/lscsoft/lalapps/bin:${PATH}" -MANPATH="/opt/lscsoft/lalapps/share/man:${MANPATH}" +LALAPPS_PREFIX=/opt/lscsoft/lalapps +#LALAPPS_PREFIX=/usr +export LALAPPS_PREFIX +PATH="${LALAPPS_PREFIX}/bin:${PATH}" +MANPATH="${LALAPPS_PREFIX}/share/man:${MANPATH}" PYSITE_PATH=python`python -V 2>&1 | cut -d' ' -f2 | cut -d. -f-2` -PYTHONPATH="/opt/lscsoft/lalapps/lib/${PYSITE_PATH}/site-packages:${PYTHONPATH}" +PYTHONPATH="${LALAPPS_PREFIX}/lib/${PYSITE_PATH}/site-packages:${PYTHONPATH}" export PATH MANPATH PYTHONPATH diff --git a/lalapps/debian/rules b/lalapps/debian/rules index 65fc07c8a7f9388884e4ff6144cb994790b89fa9..6318ff732dc43d6a88376b301c511884fd527c27 100755 --- a/lalapps/debian/rules +++ b/lalapps/debian/rules @@ -16,7 +16,9 @@ DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE) PREFIX = /opt/lscsoft/lalapps +#PREFIX = /usr FRAMEPREFIX = /opt/lscsoft/libframe +# etc. pp. - will we ever move to /usr? METAIOPREFIX = /opt/lscsoft/libmetaio LALPREFIX = /opt/lscsoft/lal LALFRAMEPREFIX = /opt/lscsoft/lalframe @@ -27,6 +29,11 @@ LALPULSARPREFIX = /opt/lscsoft/lalpulsar LALSTOCHPREFIX = /opt/lscsoft/lalstochastic LALXMLPREFIX = /opt/lscsoft/lalxml +PACKAGE = lalapps + +# list of pythonX.Y available for release used for building +PYVERS=$(shell pyversions -r) + CFLAGS = -Wall -g ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS))) @@ -49,6 +56,17 @@ config.status: configure # --enable-frame --enable-metaio \ # --disable-debug +# $() expands to list of clean-pythonX.Y +clean: + dh_testdir + dh_testroot + rm -f build-python* + + -$(MAKE) distclean + -rm -rf build + dh_clean + + build: build-stamp build-stamp: config.status @@ -59,53 +77,57 @@ build-stamp: config.status touch $@ -clean: - dh_testdir - dh_testroot - rm -f build-stamp - - -$(MAKE) distclean - dh_clean - -install: build - dh_testdir - dh_testroot - dh_clean -k - dh_installdirs - +# $() expands to list of install-pythonX.Y +install: build $(PYVERS:%=install-%) +# dh_testdir +# dh_testroot +# dh_clean -k +# dh_installdirs + # for some nasty reasons, setup.py replaces shebang lines with pythonX.Y call + # revert that! set -e; \ - for v in 2.4 2.5; do \ - PYTHON="/usr/bin/python$$v" \ - CFLAGS="$(CFLAGS)" \ - PKG_CONFIG_PATH=$(FRAMEPREFIX)/lib/pkgconfig:$(METAIOPREFIX)/lib/pkgconfig:$(LALPREFIX)/lib/pkgconfig:$(LALFRAMEPREFIX)/lib/pkgconfig:$(LALMETAIOPREFIX)/lib/pkgconfig:$(LALBURSTPREFIX)/lib/pkgconfig:$(LALINSPIRALPREFIX)/lib/pkgconfig:$(LALPULSARPREFIX)/lib/pkgconfig:$(LALSTOCHPREFIX)/lib/pkgconfig:$(LALXMLPREFIX)/lib/pkgconfig \ - ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \ - --prefix=$(PREFIX) \ - --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info \ - --enable-nightly=no \ - --enable-frame --enable-metaio \ - --disable-debug \ - --disable-gcc-flags ; \ - PYTHON="/usr/bin/python$$v" \ - $(MAKE) V=1 ; \ - PYTHON="/usr/bin/python$$v" \ - $(MAKE) DESTDIR=$(CURDIR)/debian/lalapps install ; \ - PYTHON="/usr/bin/python$$v" \ - $(MAKE) clean ; \ + for i in `find debian/$(PACKAGE)/$(PREFIX)/bin -type f`; do \ + echo $$i; \ + if head -n1 $$i | grep -q '^#!.*python2\..' ; then \ + sed -i '1s/python2\../python/' $$i; \ + fi ; \ done + # shouldn't dh_fixperms take care of that? set -e; \ for i in `find debian -mindepth 2 -type f ! -perm 755`; do \ if head -n1 $$i | grep -q '^#!' ; then \ chmod +x $$i; \ fi ; \ done - set -e; \ - for i in `find debian/lalapps/$(PREFIX)/bin -type f`; do \ - echo $$i; \ - if head -n1 $$i | grep -q '^#!.*python2\..' ; then \ - sed -i '1s/python2\../python/' $$i; \ - fi ; \ - done - cp -p debian/lalapps-user-env.* $(CURDIR)/debian/lalapps/$(PREFIX)/etc/ + cp -p debian/lalapps-user-env.* $(CURDIR)/debian/$(PACKAGE)/$(PREFIX)/etc/ + # if building with prefix /usr, move config files to /etc + if [ "$(PREFIX)" = "/usr" ]; then \ + mkdir -p $(CURDIR)/debian/$(PACKAGE)/etc/ ; \ + mv -f $(CURDIR)/debian/$(PACKAGE)/$(PREFIX)/etc/* $(CURDIR)/debian/$(PACKAGE)/etc/ ; \ + rmdir $(CURDIR)/debian/$(PACKAGE)/$(PREFIX)/etc ; \ + fi + +install-%: + # Add here commands to install the package into debian/$(PACKAGE). +# $(MAKE) DESTDIR=$(CURDIR)/debian/$(PACKAGE) install + mkdir -p $(CURDIR)/debian/$(PACKAGE)/$(PREFIX)/share/doc/$(PACKAGE) + set -e + PYTHON="/usr/bin/$*" \ + CFLAGS="$(CFLAGS)" \ + PKG_CONFIG_PATH=$(FRAMEPREFIX)/lib/pkgconfig:$(METAIOPREFIX)/lib/pkgconfig:$(LALPREFIX)/lib/pkgconfig:$(LALFRAMEPREFIX)/lib/pkgconfig:$(LALMETAIOPREFIX)/lib/pkgconfig:$(LALBURSTPREFIX)/lib/pkgconfig:$(LALINSPIRALPREFIX)/lib/pkgconfig:$(LALPULSARPREFIX)/lib/pkgconfig:$(LALSTOCHPREFIX)/lib/pkgconfig:$(LALXMLPREFIX)/lib/pkgconfig \ + ./configure --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \ + --prefix=$(PREFIX) \ + --mandir=\$${prefix}/share/man --infodir=\$${prefix}/share/info \ + --enable-nightly=no \ + --enable-frame --enable-metaio \ + --disable-debug \ + --disable-gcc-flags + PYTHON="/usr/bin/$*" \ + $(MAKE) V=1 + PYTHON="/usr/bin/$*" \ + $(MAKE) DESTDIR=$(CURDIR)/debian/lalapps install + PYTHON="/usr/bin/$*" \ + $(MAKE) clean binary-common: build install dh_testdir @@ -120,7 +142,8 @@ binary-common: build install # dh_installemacsen # dh_installpam # dh_installmime - dh_python +# don't use dh_python as it would remove bytecompiled modules! +# dh_python # dh_installinit # dh_installcron # dh_installinfo